У меня есть переменная, которая выбирает все флажки и связанный с ними идентификатор в другой функции:
var $allPdM = $('#SelectAll_' + pdmID);
В $(document).ready(function() В настоящее время у меня есть жестко закодированные на странице. Однако теперь я хотел бы сделать это динамически, когда я знаю, что будет больше:
$('#SelectAll_2006').prop("checked",true);
$('#SelectAll_2007').prop("checked",true);
$('#SelectAll_2008').prop("checked",true);
Это необходимо сделать при загрузке страницы в функции document.ready.
Как именно это будет выглядеть? Я бэкэнд-разработчик Coldfusion, я мало знаю о jQuery.
Это будет выглядеть именно так, как я показал. Просто замените class
фактическим именем класса, например. $(".selectall")
Разве это не то, что уже есть с тем, что я жестко запрограммировал? Может быть 5 вместо 3, поэтому мне нужно будет пройти через цикл, не так ли?
Нечего перебирать, есть только один класс для всех.
<input id = "SelectAll_2006" class = "selectall" type = "checkbox">
О, круто, тогда это: $('#SelectAll_ + pdmID').prop("checked",true);
Это не сработало. Я сделал это неправильно. Может тогда это - $(".SelectAll_" + pdmID).prop("checked",true);
Я отправил ответ несколько минут назад.
$('input[type=checkbox]').prop('checked', true)
Также $('input[id^=SelectAll_]').prop('checked', true)
jQuery работает с коллекциями, поэтому, если бы вы это сделали $("input").prop("checked", true)
, он добавил бы проверенное свойство к входам все. Нет необходимости в дополнительном цикле, так как jquery сделает это за вас. Таким образом, добавляя класс такой же ко всем входным данным, которые вы хотите проверить, вы можете выбрать их все с помощью одного селектора класса и добавить свойство ко всем из них одним вызовом.
Дайте всем флажкам общий класс и используйте этот класс при установке свойства.
$(function() {
$(".selectall").prop("checked", true);
});
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type = "checkbox" value = "2006" id = "SelectAll_2006" class = "selectall"> 2006<br>
<input type = "checkbox" value = "2007" id = "SelectAll_2007" class = "selectall"> 2007<br>
<input type = "checkbox" value = "2008" id = "SelectAll_2008" class = "selectall"> 2008<br>
<input type = "checkbox" value = "2009" id = "SelectAll_2009" class = "selectall"> 2009<br>
Мне нужно, чтобы все они были предварительно выбраны при загрузке страницы. Никаких функций или нажатия чего-либо. Как бы я это сделал?
Что-то в $(document).ready(function()
Да, вы можете это сделать. Это был просто пример.
Как? Я не эксперт по jQuery.
Я уже обновил ответ, чтобы показать его
Ах я вижу. Добавлен класс к динамически генерируемому устройству ввода. Добавил функцию в функцию Ready и она работает. Ура! Спасибо.
Если вы хотите, чтобы они «предварительно выбирались при загрузке страницы; без функции», измените HTML. <input type='checkedbox' checked ...
Дайте им всем общий класс, а затем используйте
$(".class").prop("checked", true);