jQuery实现checkbox全选在IE浏览器中不兼容问题


最近做的项目中使用jQuery实现全选checkbox功能发现代码在IE中不兼容,尝试了各种途径都比较麻烦,所以采用了一种比较简单的方式:

原来代码为

$("[name = chkItem]:checkbox").attr("checked", true);
目的是实现name为chkItem的checkbox全选,但是在IE中无法正常工作。

修改为

</pre><pre name="code" class="html"> var allCheckBoxs = document.getElementsByName("chkItem"); //得到需要复选框集合
 var dialogLayerId = document.getElementById('dialogLayerTab');
 var rowsLength = dialogLayerId.rows.length;//表格总共有多少行 
 for(var i=1;i<rowsLength;i++){						
	 if(dialogLayerId.rows[i].style.display==''){
                if (allCheckBoxs[i-1].checked == false) {//排除失误操作
                        $("#dialogLayerTab tr:eq(" + i + ") input:eq(0)").click();
                 }						
	 }
 }

使用了逐个点击的方法来实现选中和取消,效率不高不过实现起来更简单。

P.S.  需要注意的是在点击之前先判断当前状态,如果全选操作,复选框中存在已经选中的则进行排除,反选也是如此。



posted @   一颗小行星-  阅读(70)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示