JS自定义复选框的全选反选:
js中常常遇到checkbox全选和反选的问题,这里把我用到的给大家分享下。
第一种:
这种是页面中有checkbox按钮的
如:
这种方法很简单 一句话就可以实现反选和复选
$('input[name="subBox"]').attr("checked",this.checked);
简单带来的就是不美观,所以这里会想用自己自定义按钮实现页面的checkbox全选反选,下面介绍第二种方法;
第二种
首先看下效果图
是不是比第一种的美观很多,下面上demo;
var flag = 1;
//循环判断页面上的复选框是否选中
$("input[name='checkbox']:checkbox").each(function () {
//如果不是选中 状态则 标记改变成2
if ($(this).attr("checked")) {
} else {
flag = 2;
return true;
}
})
//这里判断 是否 是已经全部选择 如果不是 全选 否则 全不选
if (flag == 2) {
$("input[name='checkbox']").attr("checked", true);
} else {
$("input[name='checkbox']").attr("checked", false);
}
逻辑很简单,注释写的很清楚了,就是点击全选按钮时,循环判断页面中checkbox是否全部都为选中状态 如果有一个未选中,则将标记改掉,这样下面根据标记对页面中的checkbox进行全选或者全不选。