Ràng buộc với change
sự kiện thay vì click
. Tuy nhiên, có thể bạn vẫn sẽ cần kiểm tra xem hộp kiểm có được chọn hay không:
$(".checkbox").change(function() {
if(this.checked) {
//Do stuff
}
});
Lợi ích chính của việc ràng buộc với change
sự kiện trong click
sự kiện là không phải tất cả các lần nhấp vào hộp kiểm sẽ khiến nó thay đổi trạng thái. Nếu bạn chỉ muốn chụp các sự kiện khiến hộp kiểm thay đổi trạng thái, bạn muốn change
sự kiện được đặt tên thích hợp. Nhận xét lại
Cũng lưu ý rằng tôi đã sử dụng this.checked
thay vì gói phần tử trong một đối tượng jQuery và sử dụng các phương thức jQuery, đơn giản vì nó ngắn hơn và nhanh hơn để truy cập trực tiếp vào thuộc tính của phần tử DOM.
Chỉnh sửa (xem bình luận)
Để có được tất cả các hộp kiểm, bạn có một vài lựa chọn. Bạn có thể sử dụng :checkbox
bộ chọn giả:
$(":checkbox")
Hoặc bạn có thể sử dụng một thuộc tính bằng bộ chọn:
$("input[type='checkbox']")