Я не могу поставить галочки со второй попытки (я могу поставить галочку и снять галочку, но после этого ничего не происходит)

См. http://jsfiddle.net/SM5qU/1/.

Атрибуты установлены в флажок = проверен, но визуального эффекта нет. Я использую MacOS и протестирован в Chrome и Firefox

HTML

<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />

<button id="check">Check</button>
<button id="uncheck">Uncheck</button>

JS

$('#check').click(function() {
    $(':checkbox').attr('checked', true)
})

$('#uncheck').click(function() {
    $(':checkbox').attr('checked', false)
})
1
timsly 30 Янв 2013 в 16:39

2 ответа

Лучший ответ

Используйте .prop() в вашем случае:

$(':checkbox').prop('checked', true);

$(':checkbox').prop('checked', false);
4
Jai 30 Янв 2013 в 12:40

Используйте prop() вместо attr() в базовых свойствах:

$('#check').click(function() {
    $(':checkbox').prop('checked', true)
})

$('#uncheck').click(function() {
    $(':checkbox').prop('checked', false)
})

Обновленная скрипка

1
Rory McCrossan 30 Янв 2013 в 12:41