js的全选和反选的具体实现

简介: js的全选和反选的具体实现
  • 在表头 <thead> 中,有一个全选复选框 <input type="checkbox" name="" id="qx">
  • 在表体 <tbody> 中,每一行商品信息 <tr> 中,都有一个对应的商品复选框 <input type="checkbox" name="" id="">


         <div>
      <table>
        <thead>
          <tr>
            <th><input type="checkbox" name="" id="qx"></th>
            <th>商品</th>
            <th>价格</th>
          </tr>
        </thead>
        <tbody id="dx">
          <tr>
            <td><input type="checkbox" name="" id=""></td>
            <td>手机</td>
            <td>2000</td>
          </tr>
          <tr>
            <td><input type="checkbox" name="" id=""></td>
            <td>电脑</td>
            <td>1500</td>
          </tr>
          <tr>
            <td><input type="checkbox" name="" id=""></td>
            <td>平板</td>
            <td>1000</td>
          </tr>
        </tbody>
      </table>
    </div>


  • 首先通过 document.getElementById 方法获取到全选复选框和所有商品复选框的元素。
  • 给全选复选框 qx 添加点击事件处理函数 onclick
  • 在点击全选复选框时,通过循环遍历所有商品复选框 dx,将它们的 checked 属性设置为与全选复选框的 checked 属性相同,从而实现全选和反选效果。
  • 接着,通过循环遍历每个商品复选框,并为它们添加点击事件处理函数。
  • 在每个商品复选框被点击时,通过循环遍历所有商品复选框 dx,检查是否有未选中的商品复选框。如果存在未选中的商品复选框,则将全选复选框的 checked 属性设置为 false,否则设置为 true,从而实现全选和非全选的自动更新。


         let qx = document.getElementById("qx");
      let dx = document.getElementById("dx").getElementsByTagName("input");
      qx.onclick = function() {
        for (i = 0; i < dx.length; i++) {
          dx[i].checked = this.checked;
        }
      }
      for (let i = 0; i < dx.length; i++) {
        dx[i].onclick = function() {
          let flag = true;
          for (let i = 0; i < dx.length; i++) {
            //  !取反操作
            if (!dx[i].checked) {
              flag = false;
            }
          }
          qx.checked = flag;
        }
      }
目录
相关文章
|
7月前
|
JavaScript
原生js实现复选框(全选/全不选/反选)效果【含完整代码】
原生js实现复选框(全选/全不选/反选)效果【含完整代码】
208 1
|
6月前
|
JavaScript 前端开发
杨老师课堂之JavaScript案例全选、全不选、及反选
杨老师课堂之JavaScript案例全选、全不选、及反选
38 1
|
6月前
|
JavaScript 程序员
老程序员分享:js实现复选框的全选、全部选和反选
老程序员分享:js实现复选框的全选、全部选和反选
43 0
|
7月前
|
JavaScript 前端开发
JavaScript解决多选框全选、全不选和反选的问题
JavaScript解决多选框全选、全不选和反选的问题
41 0
|
JavaScript
原生js实现复选框(全选/全不选/反选)效果【含完整代码】
原生js实现复选框(全选/全不选/反选)效果【含完整代码】
551 0
|
7月前
|
JavaScript
|
JavaScript
js简单全选及反选demo效果示例(整理)
js简单全选及反选demo效果示例(整理)
|
JavaScript 前端开发
JavaScript 实现全选、单选和反选
JavaScript 实现全选、单选和反选
116 0
|
JavaScript
js实现全选和反选
js实现全选和反选
81 0
|
存储 JavaScript
js实现多选、全选、反选、取消选择(篇一)
js实现多选、全选、反选、取消选择(篇一)
401 0
js实现多选、全选、反选、取消选择(篇一)