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>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。