jquery中checkbox全选失效的解决方法
如果你使用jQuery1.6,代码if($(elem).attr(“checked”)),将获得一个属性(attribute),它不改变该复选框被选中和选中。它只是用来存储默认或选中属性的初始值。为了保持向后兼容,.attr()方法从jQuery1.6.1+开始除了返回属性值外,还会更新property属性,因此booleanattribute(布尔属性)不需要通过.prop()来改变其值。推荐使用上述方法之一,来取得checked的值。
使用jQuery的attr方法获取和设置复选框的”checked”属性,发现第一次全选/取消全选有效,之后就无效了,但查看html源文件,复选框属性确实已经被更新了,就是页面中没有更新,正确的方法如下:
<scripttype="text/javascript"src="http://code.jquery.com/jquery-1.11.1.min.js"></script><scripttype="text/javascript">//<![CDATA[
$(function(){
$('.ckAll').click(function(){
$(".box-items").each(function(){
$(this).prop("checked",!!$(".box-all").prop("checked"));
});
});
});
//]]></script>
<div><labelclass="ckAll"><inputclass="box-all"type="checkbox"/><span>全选</span></label>
<inputclass="box-items"type="checkbox"/>
<inputclass="box-items"type="checkbox"/>
<inputclass="box-items"type="checkbox"/>
<inputclass="box-items"type="checkbox"/>
<inputclass="box-items"type="checkbox"/>
</div>热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下