用原生JS实现简单的多选框功能


Posted in Javascript onJune 12, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<input id="cheakAll" type="checkbox">全选
<div>
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
</div>
</body>
</html>
<script>
//找到全选按钮
var oChkAllBtn=document.getElementById('cheakAll');
var oDiv=document.getElementsByTagName('div')[0];
var aInput=oDiv.getElementsByTagName('input');
var n=0; //计数器
//alert(aInput.length);
//点击全选按钮,让其他的全部选中
oChkAllBtn.onclick=function(){
//判断我是什么状态
/*if(this.checked==true){
for(var i=0; i<aInput.length; i++){
aInput[i].checked=true;
}
}else{
for(var i=0; i<aInput.length; i++){
aInput[i].checked=false;
}
}*/
for(var i=0; i<aInput.length; i++){
if(this.checked==true){//判断全选按钮自己的状态
aInput[i].checked=true;
n=aInput.length; //控制计数器
}else{
aInput[i].checked=false;
n=0; //控制计数器
}
};
};
//--------------------------------------------
//每一个按钮绑定事件
for(var j=0; j<aInput.length; j++){
aInput[j].onclick=function(){
//如果我自己是cheaked状态 n++ 否则 n--
if(this.checked==true){
n++;
}else{
n--;
};
//console.log(n);
//如果n==aInput.length
if(n==aInput.length){
oChkAllBtn.checked=true;
}else{
oChkAllBtn.checked=false;
}
};
};
</script>

以上所述是小编给大家介绍的用原生JS实现简单的多选框功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
一个不错的用JavaScript实现的UBB编码函数
Mar 09 Javascript
使用PHP+JQuery+Ajax分页的实现
Apr 23 Javascript
分享一则javascript 调试技巧
Jan 02 Javascript
javascript实现限制上传文件大小
Feb 06 Javascript
简介EasyUI datagrid editor combogrid搜索框的实现
Apr 01 Javascript
又一款js时钟!transform实现时钟效果
Aug 15 Javascript
jquery css实现邮箱自动补全
Nov 14 Javascript
基于touch.js手势库+zepto.js插件开发图片查看器(滑动、缩放、双击缩放)
Nov 17 Javascript
JQuery 进入页面默认给已赋值的复选框打钩
Mar 23 jQuery
深入浅析Vue中的slots/scoped slots
Apr 03 Javascript
vue.js的vue-cli脚手架中使用百度地图API的实例
Jan 21 Javascript
如何提升vue.js中大型数据的性能
Jun 21 Javascript
Angularjs 双向绑定时字符串的转换成数字类型的问题
Jun 12 #Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
Jun 12 #Javascript
AngularJS 异步解决实现方法
Jun 12 #Javascript
jquery+css实现侧边导航栏效果
Jun 12 #jQuery
angularjs实现上拉加载和下拉刷新数据功能
Jun 12 #Javascript
Vue非父子组件通信详解
Jun 12 #Javascript
详解angularjs 关于ui-router分层使用
Jun 12 #Javascript
You might like
通过html表格发电子邮件
2006/10/09 PHP
深入理解php的MySQL连接类
2013/06/07 PHP
php stream_get_meta_data返回值
2013/09/29 PHP
php 调用ffmpeg获取视频信息的简单实现
2017/04/03 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
javascript 正则替换 replace(regExp, function)用法
2010/05/22 Javascript
JavaScript中的parse()方法使用简介
2015/06/12 Javascript
kindeditor编辑器点中图片滚动条往上顶的bug
2015/07/05 Javascript
jQuery实现带分组数据的Table表头排序实例分析
2015/11/24 Javascript
jQuery 操作input中radio的技巧
2016/07/18 Javascript
学习vue.js条件渲染
2016/12/03 Javascript
使用contextMenu插件实现Bootstrap table弹出右键菜单
2017/02/20 Javascript
微信小程序实战之自定义抽屉菜单(7)
2017/04/18 Javascript
原生js二级联动效果
2017/06/20 Javascript
Vue实现virtual-dom的原理简析
2017/07/10 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
js简单的分页器插件代码实例
2019/09/11 Javascript
[36:33]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第二场
2018/04/04 DOTA
[11:44]Ti9 OG夺冠时刻
2019/08/25 DOTA
详解Python进程间通信之命名管道
2017/08/28 Python
python多进程实现进程间通信实例
2017/11/24 Python
Django2.1.3 中间件使用详解
2018/11/26 Python
PyCharm在新窗口打开项目的方法
2019/01/17 Python
Python实现KNN(K-近邻)算法的示例代码
2019/03/05 Python
pytorch:torch.mm()和torch.matmul()的使用
2019/12/27 Python
Python中bisect的使用方法
2019/12/31 Python
python 实现 hive中类似 lateral view explode的功能示例
2020/05/18 Python
HTML5 File API改善网页上传功能
2009/08/19 HTML / CSS
HTML5 transform三维立方体实现360无死角三维旋转效果
2014/08/22 HTML / CSS
Jones New York官网:美国女装品牌,受白领女性欢迎
2019/11/26 全球购物
车间主管岗位职责
2013/11/14 职场文书
建筑班组长岗位职责
2014/01/02 职场文书
暑期培训随笔感言
2014/03/10 职场文书
2014年十一国庆节爱国演讲稿
2014/09/23 职场文书
质量负责人岗位职责
2015/02/15 职场文书
JavaScript最完整的深浅拷贝实现方式详解
2022/02/28 Javascript