附加未选中复选框回调更改

时间:2012-01-23 17:20:43

标签: javascript jquery gridview checkbox

所以我有一个带有复选框字段的gridview。在jquery中,我想编写一个函数,在选中未选中的复选框时执行某些操作。

function clickAllSize() {
    alert("helloy");
}

$(document).ready(function () {
    $("input :checkbox:not(checked)").change(clickAllSize());
});

问题是该功能在任何点击之前立即在页面加载上运行。后续检查/取消选中不会触发警报。

2 个答案:

答案 0 :(得分:0)

change(clickAllSize())

之后删除()

答案 1 :(得分:0)

这应该是:

$(document).ready(function () {
    $('input[type="checkbox"]:not(checked)').change(clickAllSize);
});
  1. 在更改回调中,您应该提供函数名称,而不是调用它。
  2. 来自docs
  3.   

    因为:checkbox是jQuery扩展而不是CSS规范的一部分,使用:checkbox的查询无法利用本机DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请改用[type =“checkbox”]。

    Jquery旨在使用 0 + 选定元素,因此在调试JQuery代码时总是检查选择器长度是多少:

    var amount = $("input :checkbox:not(checked)").length;
    alert(amount);  // -Probably 0...