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 相关文章推荐
Jquery中增加参数与Json转换代码
Nov 20 Javascript
js形成页面的一种遮罩效果实例代码
Jan 04 Javascript
JQuery实现table行折叠效果以JSON做数据源
May 26 Javascript
使用变量动态设置js的属性名
Oct 19 Javascript
jQuery实现在textarea指定位置插入字符或表情的方法
Mar 11 Javascript
如何用JavaScript实现动态修改CSS样式表
May 20 Javascript
Bootstrap Table服务器分页与在线编辑应用总结
Aug 08 Javascript
ES6概念 Symbol toString()方法
Dec 25 Javascript
WebStorm ES6 语法支持设置&amp;babel使用及自动编译(详解)
Sep 08 Javascript
vue的style绑定background-image的方式和其他变量数据的区别详解
Sep 03 Javascript
jQuery删除/清空指定元素的所有子节点实例代码
Jul 04 jQuery
微信小程序实现购物车功能
Nov 18 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
PHP写MySQL数据 实现代码
2009/06/15 PHP
PHP正则替换函数preg_replace和preg_replace_callback使用总结
2014/09/22 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript 对象定义方法 简单易学
2009/03/22 Javascript
Js 回车换行处理的办法及replace方法应用
2013/01/24 Javascript
jQuery ui插件的使用方法代码实例
2013/05/08 Javascript
window.showModalDialog参数传递中含有特殊字符的处理方法
2013/06/06 Javascript
JavaScript改变HTML元素的样式改变CSS及元素属性
2013/11/12 Javascript
Nodejs异步回调的优雅处理方法
2014/09/25 NodeJs
详解JavaScript时间格式化
2015/12/23 Javascript
js操作cookie保存浏览记录的方法
2015/12/25 Javascript
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
Javascript基础_标记文字的实现方法
2016/06/14 Javascript
Javascript类型系统之String字符串类型详解
2016/06/21 Javascript
Knockout结合Bootstrap创建动态UI实现产品列表管理
2016/09/14 Javascript
easyui简介_动力节点Java学院整理
2017/07/14 Javascript
ES6中Array.copyWithin()函数的用法实例详解
2017/09/16 Javascript
解决Jstree 选中父节点时被禁用的子节点也会选中的问题
2017/12/27 Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
2019/04/17 Javascript
echarts多条折线图动态分层的实现方法
2019/05/24 Javascript
浅入深出Vue之自动化路由
2019/08/06 Javascript
一步一步实现Vue的响应式(对象观测)
2019/09/02 Javascript
Python中__init__和__new__的区别详解
2014/07/09 Python
基于python的字节编译详解
2017/09/20 Python
python实时监控cpu小工具
2018/06/21 Python
Matplotlib中rcParams使用方法
2021/01/05 Python
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
lookfantastic荷兰:在线购买奢华护肤、护发和化妆品
2018/11/27 全球购物
在线实验室测试:HealthLabs.com
2020/05/03 全球购物
给海归自荐信的建议
2013/12/13 职场文书
租房协议书怎么写
2014/04/10 职场文书
公司节能减排倡议书
2014/05/14 职场文书
2014年生产部工作总结
2014/12/17 职场文书
医院感染管理制度
2015/08/05 职场文书
2019年年中工作总结讲话稿模板
2019/03/25 职场文书