jquery中checkbox全选失效的解决方法
程序员文章站
2023-11-21 22:41:40
如果你使用jquery 1.6 ,代码if ( $(elem).attr(“checked”) ),将获得一个属性(attribute) ,它不改变该复选框...
如果你使用jquery 1.6 ,代码if ( $(elem).attr(“checked”) ),将获得一个属性(attribute) ,它不改变该复选框被选中和选中。它只是用来存储默认或选中属性的初始值。为了保持向后兼容,.attr() 方法从 jquery 1.6.1+ 开始除了返回属性值外,还会更新 property 属性,因此 boolean attribute(布尔属性)不需要通过 .prop() 来改变其值。推荐使用上述方法之一,来取得 checked 的值。
使用jquery的attr方法获取和设置复选框的”checked”属性,发现第一次全选/取消全选有效,之后就无效了,但查看html源文件,复选框属性确实已经被更新了,就是页面中没有更新,正确的方法如下:
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script><script type="text/javascript">// <![cdata[ $(function(){ $('.ckall').click(function(){ $(".box-items").each(function(){ $(this).prop("checked",!!$(".box-all").prop("checked")); }); }); }); // ]]></script> <p><label class="ckall"><input class="box-all" type="checkbox" /><span>全选</span></label> <input class="box-items" type="checkbox" /> <input class="box-items" type="checkbox" /> <input class="box-items" type="checkbox" /> <input class="box-items" type="checkbox" /> <input class="box-items" type="checkbox" /> </p>
推荐阅读
-
jquery动态改变onclick属性导致失效的问题解决方法
-
jquery中checkbox全选失效的解决方法
-
在asp.net中实现datagrid checkbox 全选的方法
-
jquery实现checkbox全选全不选的简单实例
-
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
-
JQuery中Ajax的Post提交在IE下中文乱码的解决方法
-
html文件中jquery与velocity变量中的$冲突的解决方法
-
jquery 删除cookie失效的解决方法
-
jquery开发中缓存问题的几个解决方法
-
jquery mobile页面跳转后样式丢失js失效的解决方法教程