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 相关文章推荐
学习ExtJS 访问容器对象
Oct 07 Javascript
js调用后台servlet方法实例
Jun 09 Javascript
如何书写高质量jQuery代码(使用jquery性能问题)
Jun 30 Javascript
js防止页面被iframe调用的方法
Oct 30 Javascript
浅析jquery如何判断滚动条滚到页面底部并执行事件
Apr 29 Javascript
bootstrap 下拉多选框进行多选传值问题代码分析
Feb 14 Javascript
JavaScript之生成器_动力节点Java学院整理
Jun 30 Javascript
JavaScript实现为事件句柄绑定监听函数的方法分析
Nov 14 Javascript
vue子组件改变父组件传递的prop值通过sync实现数据双向绑定(DEMO)
Feb 01 Javascript
JS手写一个自定义Promise操作示例
Mar 16 Javascript
让IDE识别webpack的别名alias的实现方法
May 06 Javascript
TypeScript 运行时类型检查补充工具
Sep 28 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
星际争霸任务指南——人族
2020/03/04 星际争霸
PHP4(windows版本)中的COM函数
2006/10/09 PHP
使用php判断浏览器的类型和语言的函数代码
2013/02/28 PHP
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
linux下php上传文件注意事项
2016/06/11 PHP
JavaScript静态的动态
2006/09/18 Javascript
可缩放Reloaded-一个针对可缩放元素的复用组件
2007/03/10 Javascript
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
javascript实现textarea中tab键的缩排处理方法
2015/06/26 Javascript
基于JQuery实现仿网易邮箱全屏动感滚动插件fullPage
2015/09/20 Javascript
javascript中checkbox使用方法简单实例演示
2015/11/17 Javascript
浅谈javascript 函数表达式和函数声明的区别
2016/01/05 Javascript
JavaScript构建自己的对象示例
2016/11/29 Javascript
AngularJS指令与指令之间的交互功能示例
2016/12/14 Javascript
AngularJS读取JSON及XML文件的方法示例
2017/05/25 Javascript
vue中用H5实现文件上传的方法实例代码
2017/05/27 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
微信小程序订阅消息(java后端实现)开发
2020/06/01 Javascript
JavaScript用document.write()输出换行的示例代码
2020/11/26 Javascript
[03:01]2014DOTA2国际邀请赛 小组赛7月13日TOPPLAY
2014/07/14 DOTA
[00:16]热血竞技场
2019/03/06 DOTA
Python中的元类编程入门指引
2015/04/15 Python
Python 获得13位unix时间戳的方法
2017/10/20 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
Python字典添加,删除,查询等相关操作方法详解
2020/02/07 Python
python中numpy数组与list相互转换实例方法
2021/01/29 Python
python爬虫破解字体加密案例详解
2021/03/02 Python
如何用border-image实现文字气泡边框的示例代码
2020/01/21 HTML / CSS
Html5页面上如何禁止手机虚拟键盘弹出
2020/03/19 HTML / CSS
Html5在手机端调用相机的方法实现
2020/05/13 HTML / CSS
澳大利亚最大的百货公司:Myer
2018/12/21 全球购物
某公司Java工程师面试题笔试题
2016/03/27 面试题
大专生工程监理求职信
2013/10/04 职场文书
安娜卡列尼娜观后感
2015/06/11 职场文书
比较node.js和Deno
2021/04/27 Javascript
解决mysql的int型主键自增问题
2021/07/15 MySQL