我正在尝试对 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/