javascript - jQuery 1.7+ 中的实时事件

标签 javascript jquery live

我正在尝试对 future 的 DOM 元素使用 on 方法,但出于某种原因,它不是在单击时调用事件,而是在动态创建 DOM 对象时触发它们。

这是我的代码。

$("#checkbox1").on('click', toggleChecked(this.checked)); //this is included in Ajax call success method


function toggleChecked(status) {
    $(".item").each(function () {
        $(this).prop("checked", status);
    });
}

我做错了什么?

最佳答案

toggleChecked(this.checked) 将立即执行该函数,然后 on 将获得其返回值作为未定义的处理程序。

将它包装成一个匿名函数,以便在您单击复选框时调用它。

$("#checkbox1").on('click', function(){
   toggleChecked(this.checked)
});

如果您直接使用 toggelChecked 方法作为 click 处理程序,您可以在处理程序中使用 `this.checked 获取复选框的 checked 状态.

关于javascript - jQuery 1.7+ 中的实时事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9036784/

相关文章:

javascript - 如何使用 jquery 将 html 树转换为自定义的 json 树?

javascript - 以小数形式设置 css 属性/使用 javascript float

javascript - 使用orgchart时出错: Cannot read property '_aZ' of null

javascript - 随机图像生成器项目(Javascript)

安卓直播上传

javascript - 如何与 electronjs 同步数据库

javascript - ASP.NET MVC 2 从 JavaScript 发布 AJAX

javascript - 将 getJSON 与变量一起使用

java - 如何将 eclipse web 项目放到真实世界的服务器上?

javascript - jQuery live 函数的简单版本