DOM ------ 表单的全选和取消全选

简介: DOM ------ 表单的全选和取消全选

表单的全选和取消全选

1.点击全选按钮, 所有选项都被选中

2.再次点击全选按钮, 所有选项都不被选中

3.当有一个选项没有被选中时, 全选按钮即不勾选

041a6f330c49471385f15713c5fac468.png

48e2b21ec89f4411b9b2181b5b4220c6.png

1fc7d567f9d1487cb4b7a12f2c38c822.png

    //css代码
    table {
            width: 200px;
            margin: 100px auto;
            text-align: center;
            border-collapse: collapse;
            font-size: 14px;
        }
        thead tr{
            height: 3px;
            background-color: skyblue;
            border: 1px solid #d7d7d7;
        }
        tbody tr {
            height: 30px;
        }
        tbody td {
            border: 1px solid #d7d7d7;
            font-size: 12px;
            color: blue;
        }
        .bg{
            background-color: pink;
        }
        //html代码
        <div class="wrap">
          <table>
              <thead>
                  <tr>
                      <th>
                          <input type="checkbox" id="j_cbAll">
                      </th>
                      <th>商品</th>
                      <th>价钱</th>
                  </tr>
              </thead>
              <tbody id="j_tb">
                  <tr>
                      <td>
                          <input type="checkbox">
                      </td>
                      <td>小米12</td>
                      <td>4999</td>
                  </tr>
                  <tr>
                      <td>
                          <input type="checkbox">
                      </td>
                      <td>小米11</td>
                      <td>3999</td>
                  </tr>
                  <tr>
                      <td>
                          <input type="checkbox">
                      </td>
                      <td>小米10</td>
                      <td>3999</td>
                  </tr>
                  <tr>
                      <td>
                          <input type="checkbox">
                      </td>
                      <td>Air</td>
                      <td>200</td>
                  </tr>
              </tbody>
          </table>
      </div>
      //js代码
      // 1.全选和取消全选做法: 让下面所有复选框的checked属性 (选中状态) 跟随 全选按钮即可 
        // 获取元素
        var j_cbAll = document.getElementById('j_cbAll') //全选按钮
        var j_tbs = document.getElementById('j_tb').getElementsByTagName('input') //下面所有的复选框
        // 注册事件
        j_cbAll.onclick = function() {
            // this.checked 它可以得到当前复选框的选中状态 如果是true 就是选中, 如果是false就是未选中
            console.log(this.checked)
            for(var i=0;i<j_tbs.length;i++){
                j_tbs[i].checked = this.checked
            }
        }
        // 2.下面复选框要全部选中 上面全选才能选中
        for(var i=0;i<j_tbs.length;i++){
            j_tbs[i].onclick = function() {
                // flag 控制全选按钮是否选中
                var flag = true
                //每次点击下面的复选框都要循环检查这四个小按钮是否全被选中
                for(var i=0;i<j_tbs.length;i++){
                    if(!j_tbs[i].checked){
                        flag = false
                        break //退出for循环 可以提高执行效率 只要有一个没选中 就退出循环
                    } 
                }
                j_cbAll.checked = flag
            }
        }

不积跬步无以至千里 不积小流无以成江海

相关文章
|
11月前
|
JavaScript 前端开发
原生JavaScript之dom表单改变和鼠标常用事件
那么好,本次我们聊聊表单改变时如何利用onchange方法来触发input改变事件以及鼠标常用的滑入滑出,点击down和点击up事件.
52 2
|
JavaScript 前端开发
HTML DOM(一)——简介,元素,表单
通过这个对象模型,JavaScript 获得创建动态 HTML 的所有力量 JavaScript 能改变页面中的所有 HTML 元素 JavaScript 能改变页面中的所有 HTML 属性 JavaScript 能改变页面中的所有 CSS 样式 JavaScript 能删除已有的 HTML 元素和属性 JavaScript 能添加新的 HTML 元素和属性 JavaScript 能对页面中所有已有的 HTML 事件作出反应 JavaScript 能在页面中创建新的 HTML 事件
141 0
HTML DOM(一)——简介,元素,表单
|
前端开发 JavaScript
HTML表单和CSS属性以及DOM实现网页版计算器
本文讲解:HTML表单和CSS属性以及DOM实现网页版计算器
|
JavaScript
js中获取表单/dom对象的方法
js中获取表单/dom对象的方法
127 0
|
JavaScript
史上最详细的DOM事件之表单事件
史上最详细的DOM事件之表单事件 上篇博客讲了DOM的键盘事件,这篇博客我们来讲一讲DOM的表单事件。 HTML代码: &lt;form action=&quot;&quot;&gt; &lt;input type=&quot;text&quot; autofocus&gt; &lt;br&gt; &lt;input type=&quot;text&quot;&gt;&lt;br&gt; &lt;input type=&quot;search&quot;&gt;&lt;br&gt; &lt;input type=&quot;reset&quot;&gt;&lt;br&gt; &lt;input type=&quot;submit&quot;&gt;&lt;br&gt; &lt;textarea name=&quot;&quot; id=&quot;area&quot; cols
|
1月前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
XML DOM 遍历节点树
|
1月前
|
JavaScript
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
|
24天前
|
JavaScript
HTML DOM 节点树
HTML DOM 节点是指在 HTML 文档对象模型中,文档中的所有内容都被视为节点。整个文档是一个文档节点,每个 HTML 元素是元素节点,元素内的文本是文本节点,属性是属性节点,注释是注释节点。DOM 将文档表示为节点树,节点之间有父子和同胞关系。
|
24天前
|
JavaScript
HTML DOM 节点
HTML DOM(文档对象模型)将HTML文档视为节点树,其中每个部分都是节点:文档本身是文档节点,HTML元素是元素节点,元素内的文本是文本节点,属性是属性节点,注释是注释节点。节点间存在父子及同胞关系,形成层次结构。
|
1月前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
XML DOM 遍历节点树