Прив’язати до changeподії замість click. Однак, ймовірно, вам потрібно буде все-таки перевірити, чи встановлено прапорець:
$(".checkbox").change(function() {
if(this.checked) {
//Do stuff
}
});
Основна перевага прив’язки до changeподії над clickподією полягає в тому, що не всі клацання прапорець призведе до зміни стану. Якщо ви хочете зафіксувати лише події, які призводять до зміни стану, ви хочете влучно названу changeподію. Перероблений у коментарях
Також зауважте, що я використовував this.checkedзамість загортання елемента в об’єкт jQuery та використовував методи jQuery, просто тому, що коротше та швидше отримати доступ до властивості елемента DOM.
Редагувати (див. Коментарі)
Щоб отримати всі прапорці, у вас є пара варіантів. Ви можете використовувати :checkboxпсевдоселектор:
$(":checkbox")
Або ви можете використовувати атрибут, рівний селектору:
$("input[type='checkbox']")