我在复选框上有一个事件侦听器:

<input type="checkbox" name="something">

我的事件监听器:

$('input[type="checkbox"][name="something"]').change(function() { 
    //DO SOMETHING 
});

I have another event listener that changes .prop of the checkbox:

$('#button').click(function() { 
    $('input[type="checkbox"][name="something"]').prop("checked", false);
});

当我选中复选框时,DO SOMETHING会触发.当我点击#button时,.prop会发生变化,我看到复选框在视觉上是取消选中的,但DO SOMETHING不会被触发……

我忽略了什么吗?

推荐答案

Change事件在页面上的用户交互更改值时激发,而不是在使用代码修改值时激发.

Here you need to use .change() or .trigger("change") after changing the property:

$('input[type="checkbox"][name="something"]').prop("checked", false).change();

Working Demo

Jquery相关问答推荐

从克隆的输入中读取数据属性,返回初始输入的值

在 JQuery DataTable 中通过按钮单击传递 ID

与其他 Javascript 框架相比,为什么 jQuery 被如此广泛地采用?

如何使用 JQuery Select 没有特定子元素的元素

在文本框中的最后一个字符之后设置焦点

仅在 _some 字段上通过 Enter 键禁用表单提交

如何设置缓存:jQuery.get 调用中的 false

未捕获的类型错误:$.post 不是函数

$(document).on('click', '#id', function() {}) 与 $('#id').on('click', function(){})

如何从表格单元格 (td) 中获取相应的表格标题 (th)?

jQuery - 使用发布数据重定向

使用 时如何从 select2 中获取选定文本

使用 JQuery / JavaScript 调用/单击 mailto 链接

Jquery:如何判断元素是否具有某些 css 类/样式

在Javascript中判断isEmpty?

在 jQuery 中 Select 后代元素的最快方法是什么?

使用 jQuery 将事件侦听器添加到动态添加的元素

CORS - 如何预检httprequest?

如何使用 bootstrap 中的 selectpicker 插件在 Select 时设置选定值

Ajax 处理中的无效 JSON 原语