我就快得老人痴呆了,遇到点心得需要马上记下来,否则眨眼就忘记。如果一个曾经遇到的问题,忘记了解决办法,就算这个办法经过千辛万苦才获得,那到头来还是等于零,等于从来就没有解决过这个问题。

换个宏大的角度,人类社会之所以不断进步,是因为出现了纸张甚至多媒体等载体,能够将文明记录下来,然后一代代传承。

现在俺记录的就是一个小问题:对一系列复选框搞个“全选”进行控制,设置选中与否。设置是可以设置了,但每个复选框的onchange事件没有触发。

jquery控制checkbox的checked属性但onchange事件无法触发问题_复选框


代码是这样写的:

function chkAll(obj){
var ischecked = obj.checked;
$("input:checkbox[child]").each(function () {
$(this).prop('checked',ischecked);//可以设置选中与否,但onchange事件没有触发
});
};

后来查到鬼佬的说明,改成这样:

function chkAll(obj){
var ischecked = obj.checked;
$("input:checkbox[child]").each(function () {
$(this).prop('checked',ischecked).change();//可以了
});
};

参考文章:
​​ ​Changing .prop using jQuery does not trigger .change event​