javascript实现简单的全选和反选功能


Posted in Javascript onJanuary 05, 2016

本文实例讲解了javascript实现简单的全选和反选功能的详细代码,分享给大家供大家参考,具体内容如下

效果图:

javascript实现简单的全选和反选功能

具体代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>全选反选</title>
</head>
<body>
  
  <input type="button" value="全选" id="all">
  <input type="button" value="反选" id="reverse">
  <input type="checkbox" id="flagCheck">
  <ul id="checkboxList">
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
    <li><input type="checkbox"></li>
  </ul>
  <p>
    布尔属性,只要name即可,值可为空
    checked,selected,readonly,disabled....
  </p>
  <script type="text/javascript">
  //1.找节点
  var allBtn = document.querySelectorAll("#all")[0];
  var reverseBtn = document.querySelector("#reverse");
  var flagCheck = document.getElementById("flagCheck");
  var checkList = document.querySelectorAll("#checkboxList input");
  function checkAll() {
    for(var j = 0; j < checkList.length; j++) {
      if(!checkList[j].checked) {
        break;
      }
    }
    if(j == checkList.length) {
      // alert("全部为真")
      flagCheck.checked = true;
    }else {
      // alert("至少一个不为真");
      flagCheck.checked = false;
    }
  }
  //2.加事件
  //全选
  allBtn.onclick = function() {
    if(flagCheck.checked) {
      flagCheck.checked = false;
      for(var i = 0; i < checkList.length; i++) {
        checkList[i].checked = false;
      }
    }else {
      flagCheck.checked = true;
      for(var i = 0; i < checkList.length; i++) {
        checkList[i].checked = true;
      }
    }
    
  }
  //反选
  reverseBtn.onclick = function() {
    for(var i = 0; i < checkList.length; i++) {
      if(checkList[i].checked) {
        checkList[i].checked = false;
      }else {
        checkList[i].checked = true;
      }
    }
    //执行检查所有checkList是否被选上了
    checkAll();
  }

  for(var i = 0; i < checkList.length; i++) {
    checkList[i].onclick = checkAll;
  }
  </script>
</body>
</html>

希望本文所述对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript中的数字与字符串相加实例分析
Aug 14 Javascript
jQuery实现根据类型自动显示和隐藏表单
Mar 18 Javascript
JS实现文字掉落效果的方法
May 06 Javascript
JavaScript实现带播放列表的音乐播放器实例分享
Mar 07 Javascript
如何实现json数据可视化详解
Nov 24 Javascript
设置jquery UI 控件的大小方法
Dec 12 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
Dec 19 Javascript
Angularjs使用指令做表单校验的方法
Mar 31 Javascript
Vue v2.5 调整和更新不完全问题
Oct 24 Javascript
linux 后台运行node服务指令方法
May 23 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
Oct 30 Javascript
JavaScript Reflect Metadata实现详解
Dec 12 Javascript
Javascript原型链的原理详解
Jan 05 #Javascript
深入浅析JavaScript系列(13):This? Yes,this!
Jan 05 #Javascript
基于javascript实现图片懒加载
Jan 05 #Javascript
this,this,再次讨论javascript中的this,超全面(经典)
Jan 05 #Javascript
基于javascript实现图片预加载
Jan 05 #Javascript
JavaScript、tab切换完整版(自动切换、鼠标移入停止、移开运行)
Jan 05 #Javascript
javascript设置和获取cookie的方法实例详解
Jan 05 #Javascript
You might like
解析MySql与Java的时间类型
2013/06/22 PHP
CodeIgniter配置之config.php用法实例分析
2016/01/19 PHP
Yii2――使用数据库操作汇总(增删查改、事务)
2016/12/19 PHP
laravel5实现微信第三方登录功能
2018/12/06 PHP
PDO::getAvailableDrivers讲解
2019/01/28 PHP
Javascript 函数中的参数使用分析
2010/03/27 Javascript
Grid得到选择行数据的方法总结
2011/01/17 Javascript
js精美的幻灯片画集特效代码分享
2015/08/29 Javascript
AngularJS的ng Http Request与response格式转换方法
2016/11/07 Javascript
jQuery中弹出iframe内嵌页面元素到父页面并全屏化的实例代码
2016/12/27 Javascript
移动端基础事件总结与应用
2017/01/12 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
Node学习记录之cluster模块
2017/05/31 Javascript
详解angular 中的自定义指令之详解API
2017/06/20 Javascript
十个免费的web前端开发工具详细整理
2017/09/18 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
vue 自定义全局方法,在组件里面的使用介绍
2018/02/28 Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
2018/12/19 Javascript
JavaScript 实现轮播图特效的示例
2020/11/05 Javascript
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
深入浅出分析Python装饰器用法
2017/07/28 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
详细解读tornado协程(coroutine)原理
2018/01/15 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
tensorflow 动态获取 BatchSzie 的大小实例
2020/06/30 Python
意大利宠物用品购物网站:Bauzaar
2018/09/15 全球购物
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
美国滑雪板和装备购物网站:Skis.com
2018/12/20 全球购物
有趣、实用和鼓舞人心的产品:Inspire Uplift
2019/11/05 全球购物
初级Java程序员面试题
2016/03/03 面试题
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
财务管理专业推荐信
2013/11/19 职场文书
小学生班会演讲稿
2014/01/09 职场文书
安全标准化汇报材料
2014/02/03 职场文书
项目经理任命书内容
2014/06/06 职场文书
初中团支书竞选稿
2015/11/21 职场文书