在自己写的几个项目中都用到了全选功能,一开始偷懒想自己网上找个用下就行,谁知到局限太多了,有的不兼容ie8有的又太复杂,索性自己写了,代码很简单一看就理解
html如下
<div>
<div class="div"><input type="checkbox" id="allchecked"><span>全选</span></div>
<ul class="ul">
<li><input type="checkbox"><span>一</span></li>
<li><input type="checkbox"><span>二</span></li>
<li><input type="checkbox"><span>三</span></li>
<li><input type="checkbox"><span>四</span></li>
<li><input type="checkbox"><span>五</span></li>
<li><input type="checkbox"><span>六</span></li>
</ul>
</div>
<script src="jquery-1.8.3.min.js"> </script>
<script>
$("#allchecked").click(function(){
var status=this.checked;
//var status=$(‘.div input[type=checkbox]‘).is(‘:checked‘)jquery方法 与上面的一样
$(".ul input[type=checkbox]").prop("checked",status);
})
$(".ul input[type=checkbox]").click(function(){
if($(".ul input[type=checkbox]:checked").length==$(".ul input[type=checkbox]").length){
$(".div input[type=checkbox]").prop("checked",true);
}else{
$(".div input[type=checkbox]").prop("checked",false);
}
})
</script>
如图
注意 最好不要用attr,
prop和attr的区别如下:
html元素本身就带有的固有属性使用prop方法对 checked selected disabled进行修改
html元素自定义的属性 使用attr方法
要是有更加简洁的写法欢迎告知