javascript实现复选框全选或反选


Posted in Javascript onFebruary 04, 2017

以下是用原生js实现的复选框全选/反选的实现,选中checkbox的时候,实现全选的效果,并且样式发生改变。
代码最简洁,js行为优化版,复制粘贴即可使用。

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>复选框全选/反选效果实现</title>
 <style>
  body,dl,dt,dd,p{margin:0;padding:0;}
  body{font-family:Tahoma;font-size:12px;}
  label,input,a{vertical-align:middle;}
  label{padding:0 10px 0 5px;}
  a{color:#09f;text-decoration:none;}
  a:hover{color:red;}
  dl{width:120px;margin:10px auto;
  border-radius:5px;background:#fafafa;}
  dt{padding-bottom:10px;
  border-bottom:1px solid #666;}
  dt label{font-weight:700;}
  p{margin-top:10px;}
 </style>
</head>
<body>
 <dl>
 <dt><input type="checkbox" id="checkAll" /><label>全选</label><a href="javascript:;">反选</a></dt>
 <dd>
  <p><input type="checkbox" name="item" /><label>选项(一)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(二)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(三)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(四)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(五)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(六)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(七)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(八)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(九)</label></p>
  <p><input type="checkbox" name="item" /><label>选项(十)</label></p>
 </dd> 
</dl>
<script type="text/javascript">
(function(){
 var aInput = document.getElementsByTagName("input");
 var aBack = document.getElementsByTagName("a")[0];
 var aLabel = document.getElementsByTagName("label")[0];
 var allInput = aInput[0];
  //全选设置,当点击事件发生时候,如果被选择全部选中,并且文本内容改变
  allInput.onclick=function(){
   if(aInput[0].checked){
   for(var i=1;i<aInput.length;i++){
    aInput[i].checked = true;
   }
    aLabel.innerHTML = "全不选";
   }
   else{
    for(var i=1;i<aInput.length;i++){
    aInput[i].checked = false;
    }
    aLabel.innerHTML = "全选";
   }

  }
  //反选设置,选中的内容是原本内容的取反
  aBack.onclick=function(){
   for(var i=1;i<aInput.length;i++){
    aInput[i].checked = !aInput[i].checked;
   }
  }
})();
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
任意位置显示html菜单
Feb 01 Javascript
符合W3C网页标准的iframe标签的使用方法
Jul 19 Javascript
判断iframe是否加载完成的完美方法
Jan 07 Javascript
javascript对数组的常用操作代码 数组方法总汇
Jan 27 Javascript
javascript学习笔记之10个原生技巧
May 21 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
May 28 Javascript
jQuery使用之处理页面元素用法实例
Jan 19 Javascript
JS+DIV实现鼠标划过切换层效果的方法
May 25 Javascript
Immutable 在 JavaScript 中的应用
May 02 Javascript
Vue.js使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
May 10 Javascript
jdk1.8+vue elementui实现多级菜单功能
Sep 24 Javascript
vue实现倒计时功能
Mar 24 Vue.js
JavaScript获取当前时间向前推三个月的方法示例
Feb 04 #Javascript
javascript表单正则应用
Feb 04 #Javascript
JS中的phototype详解
Feb 04 #Javascript
详解JavaScript RegExp对象
Feb 04 #Javascript
JS查找字符串中出现最多的字符及个数统计
Feb 04 #Javascript
JavaScript获取中英文混合字符串长度的方法示例
Feb 04 #Javascript
纯js模仿windows系统日历
Feb 04 #Javascript
You might like
完美解决dedecms中的[html][/html]和[code][/code]问题
2007/03/20 PHP
PHP5.3.1 不再支持ISAPI
2010/01/08 PHP
php 变量未定义等错误的解决方法
2011/01/12 PHP
php+ajax实时输入自动搜索匹配的方法
2014/12/26 PHP
PHP基于简单递归函数求一个数阶乘的方法示例
2017/04/26 PHP
js中格式化日期时间型数据函数代码
2010/11/08 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
js实现iframe跨页面调用函数的方法
2014/12/13 Javascript
node.js中的fs.lstatSync方法使用说明
2014/12/16 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
微信小程序之页面拦截器的示例代码
2017/09/07 Javascript
vue2导航根据路由传值,而改变导航内容的实例
2017/11/10 Javascript
node内置调试方法总结
2018/02/22 Javascript
详解plotly.js 绘图库入门使用教程
2018/02/23 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
2020/07/29 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
python sys模块sys.path使用方法示例
2013/12/04 Python
python网络编程之读取网站根目录实例
2014/09/30 Python
Python3读取文件常用方法实例分析
2015/05/22 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
学习和使用python的13个理由
2019/07/30 Python
Jupyter notebook快速入门教程(推荐)
2020/05/18 Python
使用HTML5 Canvas绘制圆角矩形及相关的一些应用举例
2016/03/22 HTML / CSS
法国综合购物网站:RueDuCommerce
2016/09/12 全球购物
巴西最大的运动品牌:Olympikus
2020/07/14 全球购物
消防安全管理制度
2014/02/01 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
学习演讲稿范文
2014/05/10 职场文书
大学生预备党员自我评价
2015/03/04 职场文书
科技活动总结范文
2015/05/11 职场文书
三八妇女节致辞
2015/07/31 职场文书
用Python简陋模拟n阶魔方
2021/04/17 Python
Python集合的基础操作
2021/11/01 Python
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript
关于CSS自定义属性与前端页面的主题切换问题
2022/03/21 HTML / CSS