首页 > 编程 > JavaScript > 正文

jquery实现全选、不选、反选的两种方法

2019-11-20 09:03:55
字体:
来源:转载
供稿:网友

在取复选框checkbox的属性checked属性值时,发现一个问题,就是当用attr取值时,真的为"checked",假的为"undefined";当用prop取值时,真的为"true",假的为"false"。经过网上参考一些资料,及根据官方的建议这两个用法:具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()。

方法一:

 <!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8"> <title>全选、不选、反选 1</title> <script src="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> <div class="music"> <input type="checkbox" name="music1" value="小白兔">小白兔<br> <input type="checkbox" name="music2" value="小燕子">小燕子<br> <input type="checkbox" name="music3" value="哈巴狗">哈巴狗<br> <input type="checkbox" name="music4" value="小青蛙">小青蛙<br> <input type="checkbox" name="music5" value="数鸭子">数鸭子<br><br> </div> <div class="check"> <button class="btn1">全选</button> <button class="btn2">全不选</button> <button class="btn3">反选</button> </div></body></html>

方法二:

 <!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8"> <title>全部由jquery动态生成</title> <script src="jquery.min.js"></script> <script> function checkAll(){//全选$(":checkbox").prop("checked",true); } function checkNo(){//全不选$(":checkbox").prop("checked",false); } function checkRev(){//反选$(":checkbox").each(function(){ $(this).prop("checked",!$(this).prop("checked")); }); } $(function(){ var sec=$("<div></div>").appendTo($("body"));//创建一个div追加到body里面var input="";//创建一个空的变量for(var i=0;i<5;i++){ var index=i+1; input+="<input type='checkbox' name='标题'"+index+"value='标题'"+index+">"+"标题"+index+"<br>"; }//把从0到4每一个创建的input收集到空变量里面sec.append(input);//再把这些收集到的所有input追加到div里面sec.append($("<button onclick='checkAll()'>全选</button>"));//创建全选按钮,并追加到div里面sec.append($("<button onclick='checkNo()'>全不选</button>"));//创建全不选按钮,并追加到div里面sec.append($("<button onclick='checkRev()'>反选</button>"));//创建反选按钮,并追加到div里面}); </script></head><body></body></html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表