我在复选框上有一个事件侦听器:
<input type="checkbox" name="something">
我的事件侦听器:
$('input[type="checkbox"][name="something"]').change(function() {
//DO SOMETHING
});
我有另一个事件侦听器,它可以更改复选框的.prop
:
$('#button').click(function() {
$('input[type="checkbox"][name="something"]').prop("checked", false);
});
当我选中复选框DO SOMETHING
触发器。当我点击#button
时,.prop
发生了变化,我看到复选框被取消选中,但DO SOMETHING
没有被触发……
我忽略了什么?
2条答案
按热度按时间goucqfw61#
当值由用户在页上的交互更改时(而不是使用代码修改值时),将激发Change事件。
这里需要在更改属性后使用
.trigger('change')
:Working Demo
v2g6jxz62#
更新版本
.change()
已弃用使用
.trigger('change')
代替