纯javascript实现选择框的全选与反选

HTML部分

  <div id="wrap_input_box" >
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>
            <input type="checkbox"><br>

      </div>
      <label for="olabel">选择全部 一键上路<input type="checkbox" id= ‘all‘></label> 

js部分

  var oinput = document.getElementById(‘all‘);
        //  var oinput_s = document.getElementsByTagName(‘input‘);
         var oinput_s = document.querySelectorAll(‘#wrap_input_box>input‘);
        //  console.log(oinput_s[6]);
        // 先设置点击全选按钮后 实现所有的选择标签显示选择     取消点击后  取消所有标签选择
        oinput.onclick = function(){
            if (this.checked){
                for (var i =0;i<oinput_s.length;i++){
                    oinput_s[i].checked=true;
                }
            }else{
                for (var i =0;i<oinput_s.length;i++){
                    oinput_s[i].checked=false;
                }
            }
        }
        // 下面设置的是   每个小标签如果在全选状态下取消选择其中的某一个 对应的按钮的状态会变为没有全选
                // 给每个小选择标签设置绑定点击事件
        for(var j = 0;j<oinput_s.length;j++){
             oinput_s[j].onclick = function (){
                   //定义一个标志位  这个标志位 用来判断后面的选择按钮的状态
                   var flag = true;
                   //遍历每个小选择标签    判断 如果每一个小标签是非选择状态   将标志位改为 false 状态 即对应为未选择
                   for (k=0;k<oinput_s.length;k++){
                       if(!oinput_s[k].checked){
                           flag=false;
                           break;
                       }

                   }

                   if(flag){
                       oinput.checked=true;
                   }else{
                       oinput.checked=false;
                   }

             }
        }

原文地址:https://www.cnblogs.com/tandongcn/p/10669685.html

时间: 2024-10-17 02:18:57

纯javascript实现选择框的全选与反选的相关文章

JS如何实现对name是数组的复选框的全选和反选以及取消选择

JS如何实现对name是数组的复选框的全选和反选以及取消选择? form内容如下: 因为PHP接收要用 数组形式的 复选框,正常情况下 JQ可如果是这种 直接使用 $("input[name=ptpt])即可.但是这种php接收的只是最后一个值,字符串.<label><input type='checkbox' name='ptpt' value='a1' />a1</label><label><input type='checkbox' n

【JavaScript】复选框的全选、反选,判断哪些复选框被选中

复选框的全选.反选,判断哪些复选框被选中,这个功能不难做, 利用document.getElementsByName("xxx");能够轻易实现,注意其返回值是一个节点数组便是了. 不过这功能对于用户来说是非常贴心的.下面举一个例子还说明这个问题. 首先是以下的布局: HTML代码如下,非常简单,三个按钮,分别设置其onclick事件所对应处理的javascript函数. 之后有四个复选框,注意设置其统一的name值,形成一个节点数组.以便被后续的document.getElement

jQuery实现复选框的全选、反选、并且根据复选框的&lt;checked属性&gt;控制多个对应div的显示/隐藏

<!doctype html><html> <head> <meta charset="utf-8"> <title>jQuery实现复选框的全选.反选.并且根据复选框的(checked属性)控制多个对应div的显示/隐藏</title> <script type="text/javascript" src="jquery-1.11.3.min.js"></

【jQuery】复选框的全选、反选,判断哪些复选框被选中

本文与<[JavaScript]复选框的全选.反选,判断哪些复选框被选中>(点击打开链接)为姊妹篇,把里面内容再与jQuery框架中实现一次,同样做到如下的效果: 布局还是同样的布局,只是由于在jQuery框架中,无须再为按钮,指定特定的onclick事件处理函数,直接使用jQuery指定即可: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri

jQuery实现复选框的全选、反选和不选功能

<!doctype html><html> <head> <meta charset="utf-8"> <title>jQuery实现复选框的全选.反选和不选功能</title> <script type="text/javascript" src="jquery-1.11.3.min.js"></script> </head> <s

jQuery 实现复选框的全选与反选

<script> //实现全选与反选 $(".allAndNotAll").click(function () { if ($(this).prop("checked")) { $("input[id=inlineCheckbox1]:checkbox").each(function () { $(this).prop("checked", true); }); } else { $("input[id=

20150620复选框的全选和反选

html======= <div class="demo1"> <h5><input type="checkbox" id="all" /><label>全选选项</label></h5> <p><input type="checkbox" name="item" /><label>选项(一)<

jQuery特效--复选框实现全选、反选和清空

效果图: 实现方法很简单: 首先三个按钮分别添加单击事件,实现方法具体如下: 全选:匹配所有checkbox,将其checked属性设置成true: 反选:匹配所有checkbox遍历,将其checked属性值取反: 清空:匹配所有checkbox,将其checked属性设置成false. HTML代码: <label> <input type="checkbox" name="name" value="A" />A<

Jquery 全选、反选问题解析

最近工作中,需要使用Jquery实现复选框的全选和反选,本人虽然不是专职撸前端的,但这个小问题感觉也没什么难度,下面直接上代码: <div id="list"> <ul class="mui-table-view textOverflow" id="notesList" > <li><input type="checkbox" name="notices" valu