jquery实现全选、不选、反选的两种方法
在取复选框checkbox的属性checked属性值时,发现一个问题,就是当用attr取值时,真的为"checked",假的为"undefined";当用prop取值时,真的为"true",假的为"false"。经过网上参考一些资料,及根据官方的建议这两个用法:具有true和false两个属性的属性,如checked,selected或者disabled使用prop(),其他的使用attr()。
方法一:
<!DOCTYPEhtml> <htmllang="zh-CN"> <head> <metacharset="UTF-8"> <title>全选、不选、反选1</title> <scriptsrc="jquery.min.js"></script> <script> $(function(){ $('.check.btn1').click(function(){//全选 $('.music:checkbox').prop('checked',true); }); $('.check.btn2').click(function(){//全不选 $('.music:checkbox').prop('checked',false); }); $('.check.btn3').click(function(){//反选 $('.music:checkbox').each(function(){ $(this).prop('checked',!$(this).prop('checked')); }); }); }); </script> </head> <body> <divclass="music"> <inputtype="checkbox"name="music1"value="小白兔">小白兔<br> <inputtype="checkbox"name="music2"value="小燕子">小燕子<br> <inputtype="checkbox"name="music3"value="哈巴狗">哈巴狗<br> <inputtype="checkbox"name="music4"value="小青蛙">小青蛙<br> <inputtype="checkbox"name="music5"value="数鸭子">数鸭子<br><br> </div> <divclass="check"> <buttonclass="btn1">全选</button> <buttonclass="btn2">全不选</button> <buttonclass="btn3">反选</button> </div> </body> </html>
方法二:
<!DOCTYPEhtml> <htmllang="zh-CN"> <head> <metacharset="UTF-8"> <title>全部由jquery动态生成</title> <scriptsrc="jquery.min.js"></script> <script> functioncheckAll(){//全选 $(":checkbox").prop("checked",true); } functioncheckNo(){//全不选 $(":checkbox").prop("checked",false); } functioncheckRev(){//反选 $(":checkbox").each(function(){ $(this).prop("checked",!$(this).prop("checked")); }); } $(function(){ varsec=$("<div></div>").appendTo($("body"));//创建一个div追加到body里面 varinput="";//创建一个空的变量 for(vari=0;i<5;i++){ varindex=i+1; input+="<inputtype='checkbox'name='标题'"+index+"value='标题'"+index+">"+"标题"+index+"<br>"; }//把从0到4每一个创建的input收集到空变量里面 sec.append(input);//再把这些收集到的所有input追加到div里面 sec.append($("<buttononclick='checkAll()'>全选</button>"));//创建全选按钮,并追加到div里面 sec.append($("<buttononclick='checkNo()'>全不选</button>"));//创建全不选按钮,并追加到div里面 sec.append($("<buttononclick='checkRev()'>反选</button>"));//创建反选按钮,并追加到div里面 }); </script> </head> <body> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。