进来开发中碰到一个比较奇怪的问题,就是用jquery控制界面中的checkbox全选和全不选的时候,
只能第一次成功使用不能重复操作。
代码如下:
全选
$('input:checkbox').each(function(){
$(this).attr('checked',true);
});
全不选
$('input:checkbox').each(function(){
$(this).attr('checked',false);
});
在网上查说是jquery1.8以上存在这个问题,解决方法是用prop
全选
$('input:checkbox').each(function(){
$(this).prop('checked',true);
});
全不选
$('input:checkbox').each(function(){
$(this).prop('checked',false);
});
这种方式没有在checkbox添加checked属性。
于是用下面这种方式写可以处理上面遇到的所有问题。
全选
$('input:checkbox').each(function(){
$(this).attr('checked',true);
$(this).prop('checked',true);
});
全不选
$('input:checkbox').each(function(){
$(this).attr('checked',false);
$(this).prop('checked',false);
});