jQuery复选框选中状态更改事件
我希望一个事件在选中/未选中复选框时触发客户端:
$('.checkbox').click(function() { if ($(this).is(':checked')) {
// Do stuff
}
});
基本上,我希望页面上的每个复选框都发生这种情况。这种触发点击并检查状态的方法可以吗?
我认为必须有一种更清洁的jQuery方式。有人知道解决方案吗?
回答:
绑定到change
事件而不是click
。但是,您可能仍然需要检查是否已选中该复选框:
$(".checkbox").change(function() { if(this.checked) {
//Do stuff
}
});
绑定到change
事件click
而不是事件的主要好处是,并非所有对复选框的单击都会导致其更改状态。如果只想捕获导致复选框更改状态的事件,则需要适当命名的change
事件。
删除评论
还要注意,我使用this.checked
而不是将元素包装在jQuery对象中并使用jQuery方法,只是因为直接访问DOM元素的属性更短,更快。
要获得所有复选框,您有两个选择。您可以使用:checkbox
伪选择器:
$(":checkbox")
或者您可以使用属性等于选择器:
$("input[type='checkbox']")
以上是 jQuery复选框选中状态更改事件 的全部内容, 来源链接: utcz.com/qa/430640.html