zoukankan      html  css  js  c++  java
  • 前端:全选全消的两种类型

    在前端网页制作中,全选全消是常用的一种类型,在这里,我就给大家分享一下俩中类型方法:
    第一种:复选框控制全选全消
    这种方法经常在淘宝天猫等购物网页中见到,效果为:一点击全选复选框,他下面的子复选框就会全部选中,再次点击,就会取消,而子复选框全部点击后,全选复选框也会被选中
    HTML代码图片
    (https://img2020.cnblogs.com/blog/2197210/202012/2197210-20201227172244629-1894808837.png)

    JS代码:
    var selectAll = document.getElementById("selectAll");
    var aas = document.getElementsByName("aa");

        selectAll.onclick = function() {
            if (selectAll.checked) {
                for (var i = 0; i < aas.length; i++) {
                    aas[i].checked = true;
                }
            } else {
                for (var i = 0; i < aas.length; i++) {
                    aas[i].checked = false;
                }
            }
        }
    
        function aa() {
            var times = 0;
            for (var i = 0; i < aas.length; i++) {
                if (aas[i].checked) {
                    times++;
                }
            }
            if (times == aas.length) {
                /* status=true; 是给status赋值,并没有改变标签*/
                selectAll.checked = true;
            } else {
                selectAll.checked = false;
            }
            //如果有一个没有选,全选框也不选
            if (times == 0) {
                selectAll.checked = false;
            }
        }
    

    第二种类型:通过按钮控制复选框的状态:
    这种类似是很简单的,效果为:点击全选按钮,所有的复选框就会全部选中,点击全不选按钮,所有的复选框就会全部取消。
    不过我在此基础上添加了一个反选按钮,虽然网页制作不常用到这个功能,但感兴趣的小伙伴们可以学习一下。
    HTML代码图片
    (https://img2020.cnblogs.com/blog/2197210/202012/2197210-20201227172434930-842655470.png)

    JS部分:
    var selectAll = document.getElementById("selectAll");
    var selectNode = document.getElementById("selectNode");
    var invert = document.getElementById("invert");

        var aas = document.getElementsByName("aa");
    
        selectAll.onclick = function() {
            for (var i = 0; i < aas.length; i++) {
                if (aas[i] = "checkbox") {
                    aas[i].checked = true;
                }
            }
        }
    
        selectNode.onclick = function() {
            for (var i = 0; i < aas.length; i++) {
                if (aas[i] = "checkbox") {
                    aas[i].checked = false;
                }
            }
        }
    
        invert.onclick = function() {
            for (var i = 0; i < aas.length; i++) {
                if (aas[i].checked == true) {
                    aas[i].checked = false;
                } else {
                    aas[i].checked = true;
                }
            }
        }
    

    以上就是我对复选框的两种类型的总结,有不对的地方,欢迎指出,如果有收获,也麻烦点击支持一下!

  • 相关阅读:
    Android Studio 优秀插件: Parcelable Code Generator
    Android Studio 优秀插件:GsonFormat
    DrawerLayout(抽屉效果)
    Python拼接字符串的七种方式
    Python爬虫教程-使用chardet
    Python爬虫教程-实现百度翻译
    Tensorflow分布式部署和开发
    简单的Python GUI界面框架
    用keras构建自己的网络层 TensorFlow2.0教程
    Python GUI教程一:Hello World
  • 原文地址:https://www.cnblogs.com/s272/p/14197907.html
Copyright © 2011-2022 走看看