В JavaScript часто возникает ситуация, когда необходимо программно установить или снять отметку с элемента checkbox
. Допустим, есть несколько чекбоксов на веб-странице:
<input type="checkbox" class="myCheckBox" value="1">
<input type="checkbox" class="myCheckBox" value="2">
<input type="checkbox" class="myCheckBox" value="3">
И требуется отметить все эти чекбоксы. Можно ошибочно предположить, что в jQuery существуют методы .checked(true)
или .selected(true)
, которые могут выполнить это действие.
$(".myCheckBox").checked(true); $(".myCheckBox").selected(true);
Однако, таких методов в jQuery нет.
Для установки или снятия отметки с чекбокса в jQuery используется метод .prop()
, который принимает два аргумента: имя свойства и значение, которое нужно установить.
$(".myCheckBox").prop('checked', true); // устанавливает отметку $(".myCheckBox").prop('checked', false); // снимает отметку
Таким образом, вместо несуществующих методов .checked(true)
или .selected(true)
, для установки отметки на чекбоксы следует использовать метод .prop('checked', true)
.
С помощью этого же метода можно также проверить, отмечен ли чекбокс:
var isChecked = $(".myCheckBox").prop('checked');
В этом случае isChecked
будет равно true
, если чекбокс отмечен, и false
— в противном случае.
Подход с использованием метода .prop()
является универсальным и работает во всех современных браузерах.
Добавить комментарий