栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

js-购物车的全选与反选

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

js-购物车的全选与反选

 
全选 学号 姓名 年龄 爱好 分数
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1

   table {
            width: 400px;
            margin-top: 20px;
            border: 1px solid #ccc;
            border-collapse: collapse;
        }
        
        table tr td,
        table tr th {
            text-align: center;
            height: 30px;
            border: 1px solid #ccc;
            border-collapse: collapse;
        }
  // 获取所有的单选框
        let checkboxs = document.getElementsByClassName('singleCheck')
            // 全选
        allcheck.addEventListener('click', function() {
                // 获得全选复选框的状态值
                if (this.checked) {
                    for (let i = 0; i < checkboxs.length; i++) {
                        checkboxs[i].checked = true
                    }
                } else {
                    for (let i = 0; i < checkboxs.length; i++) {
                        checkboxs[i].checked = false
                    }
                }
            })

 // 反选只要有一个单选框没有被选中,全选按钮就不会被选中
            // 方式1:
            // 转化为标准的数组
        let arr = Array.prototype.slice.call(checkboxs)
//记录被选中的复选框的个数
        let counts = 0
        for (let i = 0; i < arr.length; i++) {
            arr[i].addEventListener('click', function() {
                if (arr[i].checked == true) {
                    counts++
                } else {
                    counts--
                }
                if (counts == arr.length) {
                    allcheck.checked = true
                } else {
                    allcheck.checked = false
                }
            })
        }
//方式2  标杆思想
        for (let i = 0; i < checkboxs.length; i++) {
            checkboxs[i].addEventListener('click', function() {
                // 设置标杆
                let flag = true
                for (let j = 0; j < checkboxs.length; j++) {
                    if (!checkboxs[j].checked) {
                        flag = false
                    }
                    // 让全选框的值和flag标杆保持一致
                    allcheck.checked = flag
                }
            })
        }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/268948.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号