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 相关文章推荐
document.open() 与 document.write()的区别
Aug 13 Javascript
扩展easyui.datagrid,添加数据loading遮罩效果代码
Nov 02 Javascript
快速掌握WordPress中加载JavaScript脚本的方法
Dec 17 Javascript
jQuery ready()和onload的加载耗时分析
Sep 08 Javascript
将html页面保存成图片,图片写入pdf的实现方法(推荐)
Sep 17 Javascript
js实现tab选项卡切换功能
Jan 13 Javascript
Vue学习笔记进阶篇之单元素过度
Jul 19 Javascript
使用async、enterproxy控制并发数量的方法详解
Jan 02 Javascript
vue-cli开发时,关于ajax跨域的解决方法(推荐)
Feb 03 Javascript
javascript设计模式 ? 享元模式原理与用法实例分析
Apr 15 Javascript
基于javascript处理二进制图片流过程详解
Jun 08 Javascript
详解CocosCreator项目结构机制
Apr 14 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
PHP+SQL 注入攻击的技术实现以及预防办法
2011/01/27 PHP
php文件打包 下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
2012/06/13 PHP
php启动时候提示PHP startup的解决方法
2013/05/07 PHP
浅谈php7的重大新特性
2015/10/23 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
encode脚本和normal脚本混用的问题与解决方法
2007/03/08 Javascript
jQuery表格排序组件-tablesorter使用示例
2014/05/26 Javascript
两种方法基于jQuery实现IE浏览器兼容placeholder效果
2014/10/14 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
JavaScript实现复制或剪切内容到剪贴板功能的方法
2016/05/23 Javascript
js select下拉联动 更具级联性!
2020/04/17 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
js弹性势能动画之抛物线运动实例详解
2017/07/27 Javascript
vue.js2.0点击获取自己的属性和jquery方法
2018/02/23 jQuery
javascript实现移动端上传图片功能
2020/08/18 Javascript
[06:21]完美世界亚洲区首席发行官竺琦TI3采访
2013/08/26 DOTA
Python实现全角半角转换的方法
2014/08/18 Python
Python 专题三 字符串的基础知识
2017/03/19 Python
pandas 对series和dataframe进行排序的实例
2018/06/09 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
如何使用repr调试python程序
2020/02/28 Python
pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)
2020/04/15 Python
python 实现单例模式的5种方法
2020/09/23 Python
详解查看Python解释器路径的两种方式
2020/10/15 Python
python实现杨辉三角的几种方法代码实例
2021/03/02 Python
css3 flex实现div内容水平垂直居中的几种方法
2020/03/27 HTML / CSS
印尼最大的婴儿用品购物网站:Orami
2017/09/28 全球购物
人力资源管理专业学生自我评价
2013/11/20 职场文书
网络专业学生个人的自我评价
2013/12/16 职场文书
给老婆的搞笑检讨书
2014/01/12 职场文书
大学生学年自我鉴定
2014/02/10 职场文书
护士找工作求职信
2014/07/02 职场文书
委托书格式范文
2015/01/28 职场文书
院系推荐意见
2015/06/05 职场文书
Python中time与datetime模块使用方法详解
2022/03/31 Python
MYSQL常用函数介绍
2022/05/05 MySQL