Установите флажок с определенным значением
Я хочу установить флажок с specfic значением и сделать его проверенным.
Я делаю вот так
$(":checkbox").filter({"value":5}).attr("checked","true");
и вот html
<input type="checkbox" name="priv" value="1"/>
<input type="checkbox" name="priv" value="2"/>
<input type="checkbox" name="priv" value="3"/>
<input type="checkbox" name="priv" value="4"/>
<input type="checkbox" name="priv" value="5"/>
<input type="checkbox" name="priv" value="6"/>
<input type="checkbox" name="priv" value="7"/>
<input type="checkbox" name="priv" value="8"/>
здесь демонстрация проблемы
Ответы
Ответ 1
Вы можете использовать Атрибут выбора атрибутов [ name= "значение" ], чтобы установить флажки с определенным значением. Также используйте prop() вместо attr() как это рекомендуется jQuery doc.
Live Demo
$(":checkbox[value=4]").prop("checked","true");
или
$("input[type=checkbox][value=5]").prop("checked",true);
Описание: Выбирает элементы с указанным атрибутом со значением, равным определенному значению, jQuery doc.
Вы также можете сделать это Используя attr(), но prop более подходит для логических свойств.
$(":checkbox[value=4]").attr("checked","true");
Как и в jQuery 1.6, метод .attr() возвращает undefined для атрибутов которые не были установлены. Извлечение и изменение свойств DOM, таких как проверенное, выбранное или отключенное состояние элементов формы, используйте .prop(), jQuery doc
Изменить, заданный в комментариях: "Как будет выглядеть ответ /find -expression со сложными значениями, например value =" Smith, David "
Вы можете приложить такие значения, как Смит, Дэвид, одинарные кавычки. Вы даже можете использовать символ, используемый jQuery, например, #,., $И т.д., См. Обновленный скрипт здесь.
$("input[type=checkbox][value='#Smith, David$']").attr("checked","true");
Ответ 2
$(":checkbox").filter(function() {
return this.value == '5';
}).prop("checked","true");
DEMO
Если вы хотите использовать его для разных значений, сделайте его общим, как показано ниже:
function checkWithValue(val) {
$(":checkbox").filter(function() {
return this.value == val;
}).prop("checked", "true");
}
checkWithValue(5);
DEMO
Ответ 3
$("input:checkbox[value='5']").attr("checked","true")
Ответ 4
У меня были динамические значения, которые нужно было зацикливать. Это то, что сработало для меня:
for (var i = 0, len = value.length; i < len; i++) {
$("#form-name").find("input[type=checkbox][name='fName']").filter(function () {
return this.value == values[i];
}).prop("checked", true);
}
Надеюсь, что кто-то поможет.
Ответ 5
Он также работает с квадратной практикой
$(":checkbox").filter(["value":5]).prop("checked","true");
Ответ 6
$(":checkbox[value=5]").attr("checked",true);
Ответ 7
$("#catalogTBL").find("input[type=checkbox][value='snet']").prop("checked", true);
Это был единственный способ заставить это работать. Поиск флажка в таблице.
Ответ 8
Иногда мы хотим получить флажок динамически для определенного значения.
$(document).on('click','.at-filter a', function(){
var aaa = $(this).parent().find("em").html();
$("input[type=checkbox][value='"+aaa+"']").prop('checked',false)
});