zoukankan      html  css  js  c++  java
  • 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;
                        }
                    }
     
  • 相关阅读:
    win10让屏幕壁纸动态变化某文件夹下的图片
    win10查看桌面壁纸路径
    Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the serv
    将网站发布到阿里云的Linux服务器上(简述)
    图解MySQL 内连接、外连接、左连接、右连接、全连接
    JAVA _____Scanner用法
    JAVA数组翻转
    Lucene 01
    [转载] Relearning to Learn
    二进制包安装Kubernetes集群环境完整版
  • 原文地址:https://www.cnblogs.com/gs97/p/7903059.html
Copyright © 2011-2022 走看看