input checkbod 全选 反选
<script>
var CheckBox=div.getElementsByTagName('input'); //全选 function CheckAll(){ for(i=0;i<CheckBox.length;i++){CheckBox[i].checked=true;}; }; //不选 function UnCheck(){ for(i=0;i<CheckBox.length;i++){CheckBox[i].checked=false;}; }; //反选 function othercheck(){ for(i=0;i<CheckBox.length;i++){ if(CheckBox[i].checked==true){ CheckBox[i].checked=false;} else{ CheckBox[i].checked=true} } }; </script>第二种方法:
window.onload = function() {
//先获得控制全选反选的input标签
var inputAll = document.getElementById("theadInp");
//获得tbody
var tbody = document.getElementById("tbody");
//获得天tbody里面的子元素
var icheck = tbody.getElementsByTagName("input");
console.log(icheck);
//给控制全选反选的input标签绑定事件
inputAll.onclick = function() {
//遍历tbody里面的input标签,把inputAll的状态赋值给icheck
for(var i = 0; i < icheck.length; i++) {
icheck[i].checked = this.checked;
}
}
以为这样就结束了事了吗?然而并没有。里面还是有个小问题的,就是当下面的input有一个以上没选中的时候,那么inputAll的状态也必须要跟着变化,总不能只让人家听他一个人的话吧,这就太不像话了。
for(var i = 0; i < icheck.length; i++) {
//给每个子元素都绑定事件
icheck[i].onclick = function() {
//点击的时候在遍历icheck,看看是否有没选中的
for(var j = 0; j < icheck.length; j++) {
//定义一个标志来记录
var flag = true;
if(icheck[j].checked == false) {
flag = false;
}
}
inputAll.checked=flag;
}
}

浙公网安备 33010602011771号