Sử dụng sự kiện change()
và is()
kiểm tra:
$('input:checkbox').change(
function(){
if ($(this).is(':checked')) {
alert('checked');
}
});
Tôi đã cập nhật ở trên, theo sau, vì sự phụ thuộc ngớ ngẩn của tôi trên jQuery (trong if
) khi các thuộc tính DOM sẽ phù hợp như nhau và cũng rẻ hơn để sử dụng. Cũng chọn đã được thay đổi, để cho phép nó được thông qua, trong những trình duyệt có hỗ trợ nó, để document.querySelectorAll()
phương pháp của DOM:
$('input[type=checkbox]').change(
function(){
if (this.checked) {
alert('checked');
}
});
Đối với mục đích hoàn chỉnh, điều tương tự cũng có thể dễ dàng có thể trong đồng bằng JavaScript:
var checkboxes = document.querySelectorAll('input[type=checkbox]'),
checkboxArray = Array.from(checkboxes);
function confirmCheck() {
if (this.checked) {
alert('checked');
}
}
checkboxArray.forEach(function(checkbox) {
checkbox.addEventListener('change', confirmCheck);
});
Tài liệu tham khảo:
Nguồn
2011-07-29 20:41:57
vấn đề này ở đây là '$ ('input type = [ "checkbox"]')' không phải là một chọn hợp lệ. Nó phải là '$ ('input [type = checkbox]')' thay thế. Thậm chí tốt hơn mặc dù sẽ là '$ ('input: checkbox')'. ;) – CptRobby