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


Posted in Javascript onApril 08, 2019

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;
          }
          
       }
    }

总结

以上所述是小编给大家介绍的纯javascript实现选择框的全选与反选功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
JavaScript语言中的Literal Syntax特性分析
Mar 08 Javascript
javascript radio 联动效果
Mar 04 Javascript
ASP.NET jQuery 实例5 (显示CheckBoxList成员选中的内容)
Jan 13 Javascript
javascript弹出窗口实现代码
Nov 12 Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
Jan 28 Javascript
详解js中Json的语法与格式
Nov 22 Javascript
Angularjs实现搜索关键字高亮显示效果
Jan 17 Javascript
Node.js实现文件上传的示例
Jun 28 Javascript
Vue2.0如何发布项目实战
Jul 27 Javascript
Vue的click事件防抖和节流处理详解
Nov 13 Javascript
JS实现拼图游戏
Jan 29 Javascript
用JS创建一个录屏功能
Nov 11 Javascript
详解小程序如何避免多次点击,重复触发事件
Apr 08 #Javascript
「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)
Apr 08 #Javascript
微信小程序BindTap快速连续点击目标页面跳转多次问题处理
Apr 08 #Javascript
vue.js实现会动的简历(包含底部导航功能,编辑功能)
Apr 08 #Javascript
微信小程序视图控件与bindtap之间的问题的解决
Apr 08 #Javascript
微信小程序实现bindtap等事件传参
Apr 08 #Javascript
详解vue中axios请求的封装
Apr 08 #Javascript
You might like
PHP fgetcsv 定义和用法(附windows与linux下兼容问题)
2012/05/29 PHP
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
2012/07/15 PHP
7个鲜为人知却非常实用的PHP函数
2015/07/01 PHP
php自动识别文字编码并转换为目标编码的方法
2015/08/08 PHP
PHP7正式版测试,性能惊艳!
2015/12/08 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
CodeIgniter连贯操作的底层原理分析
2016/05/17 PHP
JS 的应用开发初探(mootools)
2009/12/19 Javascript
jQuery 版元素拖拽原型代码
2011/04/25 Javascript
jQuery中ScrollTo用法示例
2016/09/04 Javascript
jQuery实现的导航下拉菜单效果示例
2016/09/05 Javascript
js实现hashtable的赋值、取值、遍历操作实例详解
2016/12/25 Javascript
简单实现bootstrap选项卡效果
2017/02/08 Javascript
微信小程序页面传值实例分析
2017/04/19 Javascript
JS 中使用Promise 实现红绿灯实例代码(demo)
2017/10/20 Javascript
JavaScript定义及输出螺旋矩阵的方法详解
2017/12/01 Javascript
vue项目中v-model父子组件通信的实现详解
2017/12/10 Javascript
Vue自定义指令实现checkbox全选功能的方法
2018/02/28 Javascript
Vue 仿QQ左滑删除组件功能
2018/03/12 Javascript
vuejs使用axios异步访问时用get和post的实例讲解
2018/08/09 Javascript
jquery实现吸顶导航效果
2020/01/08 jQuery
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
Python处理json字符串转化为字典的简单实现
2016/07/07 Python
node.js获取参数的常用方法(总结)
2017/05/29 Python
python http接口自动化脚本详解
2018/01/02 Python
numpy找出array中的最大值,最小值实例
2018/04/03 Python
Python延时操作实现方法示例
2018/08/14 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
Pycharm2020.1安装中文语言插件的详细教程(不需要汉化)
2020/08/07 Python
关于Python字符编码与二进制不得不说的一些事
2020/10/04 Python
使用 css3 transform 属性来变换背景图的方法
2019/05/07 HTML / CSS
销售求职信范文
2014/05/26 职场文书
土地租赁意向书
2014/07/30 职场文书
港澳通行证委托书怎么写
2014/08/02 职场文书
《三国志》赏析
2019/08/27 职场文书
React四级菜单的实现
2022/04/08 Javascript