jquery 实现复选框的全选操作实例代码


Posted in Javascript onJanuary 24, 2017

jquery 实现复选框的全选操作实例代码

最近做了个需求,需要实现列表复选框的全选/取消全选操作,由于之前对这块不是很了解,所以从网上查了一些资料,虽然有各种实现方法,但没找到直接可以套用的。自己琢磨了下,把功能实现,整理如下。

实现细节如有可改进的地方,不吝赐教。

首先是html部分的代码,这里有一个表格,表格里面有一些选项:

<div id="list"> 
  <table> 
    <tr><td>选项1<input type="checkbox" name="group" value="1"/></tr> 
    <tr><td>选项2<input type="checkbox" name="group" value="2"/></tr> 
    <tr><td>选项3<input type="checkbox" name="group" value="3"/></tr> 
  </table> 
</div>
全选<input type="checkbox" id="all"/> 

接下来是jquery:

<script> 
$(document).ready(function () { 
  //全选或全不选 
  $("#all").click(function () { 
    if (this.checked) { 
      $("#list :checkbox").attr("checked", true); 
    } else { 
      $("#list :checkbox").attr("checked", false); 
    } 
  }); 
  //设置全选复选框 
  $("#list :checkbox").click(function () { 
    allchk(); 
  }); 
  function allchk() { 
    var chknum = $("#list :checkbox").size();//选项总个数 
    var chk = 0; 
    $("#list :checkbox").each(function () { 
      if ($(this).attr("checked")) { 
        chk++; 
      } 
    }); 
    if (chknum == chk) {//全选 
      $("#all").attr("checked", true); 
    } else {//不全选 
      $("#all").attr("checked", false); 
    } 
  } 
  //显示时执行一次 
  allchk(); 
}); 
</script>

当全选框被点击时,判断选中状态,如果是选中,则为所有选项的复选框设置选中属性;如果是取消选中,则为所有选项的复选框取消选中属性。

同时,为每个选项复选框添加判断,当所有的选项复选框都选中时,全选框自动选中;否则,全选框取消选中。这里通过计数来比较(选项的数量和选中的选项数量),通过each方法来进行遍历。

最后,在显示时执行一次,这是确保如果初始状态就是所有选项都选中的状态,要保证全选框也是选中的状态。

参考:jquery中checkbox使用方法简单实例演示

Javascript 相关文章推荐
js 键盘记录实现(兼容FireFox和IE)
Feb 07 Javascript
JQuery 选项卡效果(JS与HTML的分离)
Apr 01 Javascript
jQuery学习笔记(2)--用jquery实现各种模态提示框代码及项目构架
Apr 08 Javascript
js 获取元素下面所有li的两种方法
Apr 14 Javascript
html5+javascript制作简易画板附图
Apr 25 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
Oct 16 Javascript
javascript使用smipleChart实现简单图表
Jan 02 Javascript
JavaScript框架是什么?怎样才能叫做框架?
Jul 01 Javascript
JSON与String互转的实现方法(Javascript)
Sep 27 Javascript
前端自动化开发之Node.js的环境搭建教程
Apr 01 Javascript
vue计算属性时v-for处理数组时遇到的一个bug问题
Jan 21 Javascript
Vue+axios+WebApi+NPOI导出Excel文件实例方法
Jun 05 Javascript
谈谈JavaScript数组常用方法总结
Jan 24 #Javascript
js实现日历的简单算法
Jan 24 #Javascript
JSON键值对序列化和反序列化解析
Jan 24 #Javascript
js自制图片放大镜功能
Jan 24 #Javascript
JS中绑定事件顺序(事件冒泡与事件捕获区别)
Jan 24 #Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
Jan 24 #Javascript
JavaScript解析JSON格式数据的方法示例
Jan 24 #Javascript
You might like
Linux编译升级php的详细方法
2013/11/04 PHP
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
jQuery实现倒计时按钮功能代码分享
2014/09/03 Javascript
jQuery实现单击和鼠标感应事件
2015/02/01 Javascript
JS访问SWF的函数用法实例
2015/07/01 Javascript
轻松实现js图片预览功能
2016/01/18 Javascript
AngularJS入门教程之静态模板详解
2016/08/18 Javascript
jQuery视差滚动效果网页实现方法经验总结
2016/09/29 Javascript
js实现右键自定义菜单
2016/12/03 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
vue.js+Element实现表格里的增删改查
2017/01/18 Javascript
原生js实现弹出层效果
2017/01/20 Javascript
微信小程序之发送短信倒计时功能
2017/08/30 Javascript
node前端开发模板引擎Jade的入门
2018/05/11 Javascript
详解vuex中action何时完成以及如何正确调用dispatch的思考
2019/01/21 Javascript
node实现爬虫的几种简易方式
2019/08/22 Javascript
webpack HappyPack实战详解
2019/10/08 Javascript
简单解析Django框架中的表单验证
2015/07/17 Python
Python使用win32 COM实现Excel的写入与保存功能示例
2018/05/03 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
Python用5行代码写一个自定义简单二维码
2018/10/21 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
详解基于canvas的视频遮罩插件
2018/01/04 HTML / CSS
澳大利亚办公室装修:JasonL Office Furniture
2019/06/25 全球购物
接受捐赠答谢词
2014/01/27 职场文书
办公室主任主任岗位责任制
2014/02/11 职场文书
中国梦口号
2014/06/13 职场文书
2014第二批党的群众路线教育实践活动对照检查材料思想汇报
2014/09/18 职场文书
团组织推优材料
2014/12/29 职场文书
同事打架检讨书
2015/05/06 职场文书
承兑汇票延期证明
2015/06/23 职场文书
2015年暑期社会实践报告
2015/07/13 职场文书
python process模块的使用简介
2021/05/14 Python
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
2022/06/14 MySQL