纯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 相关文章推荐
JS面向对象编程 for Cookie
Sep 19 Javascript
Json序列化和反序列化方法解析
Dec 19 Javascript
浅谈javascript中遇到的字符串对象处理
Nov 18 Javascript
AngularJs中Bootstrap3 datetimepicker使用实例
Dec 13 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
Jan 05 Javascript
Jquery uploadify 多余的Get请求(404错误)的解决方法
Jan 26 Javascript
AngularJS表格添加序号的方法
Mar 03 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
Jul 10 Javascript
通过js控制时间,一秒一秒自己动的实例
Oct 25 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
Jul 31 Javascript
js实现图片粘贴到网页
Dec 06 Javascript
vue+element ui实现锚点定位
Jun 29 Vue.js
详解小程序如何避免多次点击,重复触发事件
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
这部好评如潮的动漫 知名梗频出 但是画风劝退很多人
2020/03/08 日漫
php中防止恶意刷新页面的代码小结
2012/10/31 PHP
php输入流php://input使用示例(php发送图片流到服务器)
2013/12/25 PHP
php中的ini配置原理详解
2014/10/14 PHP
PHP判断一个gif图片是否为动态图片的方法
2014/11/19 PHP
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
2017/10/13 PHP
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
Javascript中3种实现继承的方法和代码实例
2014/08/12 Javascript
javascript显示中文日期的方法
2015/06/18 Javascript
详解Vue中状态管理Vuex
2017/05/11 Javascript
Vue Transition实现类原生组件跳转过渡动画的示例
2017/08/19 Javascript
vue下跨域设置的相关介绍
2017/08/26 Javascript
解决ie img标签内存泄漏的问题
2017/10/13 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
2019/04/15 Javascript
JavaScript 作用域实例分析
2019/10/02 Javascript
Vue表单提交点击事件只允许点击一次的实例
2020/10/23 Javascript
Python爬虫之pandas基本安装与使用方法示例
2018/08/08 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
python中的colorlog库使用详解
2019/07/05 Python
python读取多层嵌套文件夹中的文件实例
2020/02/27 Python
python实现录音功能(可随时停止录音)
2020/10/26 Python
css3 旋转按钮 使用CSS3创建一个旋转可变色按钮
2012/12/31 HTML / CSS
html5设计原理(推荐收藏)
2014/05/17 HTML / CSS
bareMinerals官网:矿物质化妆品和护肤品
2018/02/04 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
机械专业个人求职自荐信格式
2013/09/21 职场文书
和平主题的演讲稿
2014/01/12 职场文书
四川成都导游欢迎词
2014/01/18 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
小学生春游活动方案
2014/08/20 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
培根随笔读书笔记
2015/07/01 职场文书
mysql多表查询-笔记七
2021/04/05 MySQL
pandas求平均数和中位数的方法实例
2021/08/04 Python
python 详解turtle画爱心代码
2022/02/15 Python