jQuery 全选 全不选 事件绑定的实现代码


Posted in Javascript onJanuary 23, 2017

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

<td width="82%" colspan="3">
<input type="checkbox" id="all">全选     
<input type="checkbox" id="reverse">反选
</td>
<td width="82%" colspan="3">
<s:checkboxlist name="resUuids" list="resList" listKey="uuid" listValue="name"></s:checkboxlist>
</td>
$(function(){
//全选
$("#all").click(function(){
//将下面所有组件全部选中
//$("[name=resUuids]")  是多个组件,整体是个对象数组
//$("[name=resUuids]").attr("checked","checked");
//先获取当前组件的状态
//$(this).attr("checked")
//将所有组件设置为对应状态
//$("[name=resUuids]").attr("checked",$(this).attr("checked"));
//$(this).attr("checked")获取的值究竟是什么
//alert($(this).attr("checked"));    //undefined
//$("[name=resUuids]").attr("checked","undefined");
//js语法规则,除了false,FALSE,"false","FALSE",0五个值之外的所有值,认定为true
//$("[name=resUuids]").attr("checked",false);
var flag = $(this).attr("checked");
$("[name=resUuids]").attr("checked",flag == "checked");
});
//反选
    $("#reverse").click(function(){
      //将所有组件的状态切换成原始状态的反状态
      //$("[name=resUuids]").attr("checked",!($("[name=resUuids]").attr("checked")=="checked"));
      //当选择器选中的组件是多个时,获取组件的任何数据都是对第一个组件进行操作
      //alert(!($("[name=resUuids]").attr("checked")=="checked"));
      //对每个组件进行迭代,让其操作状态为对应组件的原始状态的反状态
      $("[name=resUuids]").each(function(){
        //使用each操作实现对每个组件的操作
        var flag = $(this).attr("checked"); 
        $(this).attr("checked", !(flag =="checked"));
      });
      checkSelect();
    });
//绑定组件
    $("[name=resUuids]").click(function(){
      //将全选的状态设置为基于所有组件的综合状态值
      checkSelect();
    });
    function checkSelect(){
      var allFlag = true;
      $("[name=resUuids]").each(function(){
        var flag = $(this).attr("checked") == "checked";
        //&:位运算与   &&:逻辑与
        allFlag = allFlag && flag; 
      });
      $("#all").attr("checked",allFlag);
    }
  });

以上所述是小编给大家介绍的jQuery 全选 全不选 事件绑定的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js和jquery对dom节点的操作(创建/追加)
Apr 21 Javascript
利用javascript实现web页面中指定区域打印
Oct 30 Javascript
js整数字符串转换为金额类型数据(示例代码)
Dec 26 Javascript
js处理表格对table进行修饰
May 26 Javascript
node.js中的fs.truncate方法使用说明
Dec 15 Javascript
手机端页面rem宽度自适应脚本
May 20 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
Dec 10 Javascript
详解JavaScript时间格式化
Dec 23 Javascript
关于Vue.nextTick()的正确使用方法浅析
Aug 25 Javascript
浅谈React 服务器端渲染的使用
May 08 Javascript
JS遍历JSON数组及获取JSON数组长度操作示例【测试可用】
Dec 12 Javascript
Node.js原生api搭建web服务器的方法步骤
Feb 15 Javascript
Javascript中构造函数要注意的一些坑
Jan 23 #Javascript
在 Angular2 中实现自定义校验指令(确认密码)的方法
Jan 23 #Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
Jan 23 #Javascript
利用JS实现简单的日期选择插件
Jan 23 #Javascript
获取IE浏览器Cookie信息的方法
Jan 23 #Javascript
jQuery实现的简单悬浮层功能完整实例
Jan 23 #Javascript
原生和jQuery的ajax用法详解
Jan 23 #Javascript
You might like
模仿OSO的论坛(三)
2006/10/09 PHP
新安装的MySQL数据库需要注意的安全知识
2008/07/30 PHP
晋城吧对DiscuzX进行的前端优化要点
2010/09/05 PHP
php引用地址改变变量值的问题
2012/03/23 PHP
PHP输出缓存ob系列函数详解
2014/03/11 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
[IE&amp;FireFox兼容]JS对select操作
2007/01/07 Javascript
js window.event对象详尽解析
2009/02/17 Javascript
JavaScript 核心参考教程 内置对象
2009/10/13 Javascript
起点页面传值js,有空研究学习下
2010/01/25 Javascript
document.getElementBy(&quot;id&quot;)与$(&quot;#id&quot;)有什么区别
2013/09/22 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
使用 bootstrap modal遇到的问题小结
2016/11/09 Javascript
jQuery实现限制文本框的输入长度
2017/01/11 Javascript
CKEditor4配置与开发详细中文说明文档
2018/10/08 Javascript
解决vue语法会有延迟加载显现{{xxx}}的问题
2019/11/14 Javascript
JS实现关闭小广告特效
2021/01/29 Javascript
Python制作CSDN免积分下载器
2015/03/10 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
tensorflow识别自己手写数字
2018/03/14 Python
一些Centos Python 生产环境的部署命令(推荐)
2018/05/07 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
Python魔法方法 容器部方法详解
2020/01/02 Python
keras 指定程序在某块卡上训练实例
2020/06/22 Python
html5使用canvas实现跟随光标跳动的火焰效果
2014/01/07 HTML / CSS
纽约通行卡:The New York Pass(免费游览纽约90多个景点)
2017/07/29 全球购物
如何整合JQuery和Prototype
2014/01/31 面试题
高一新生军训感言
2014/03/02 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
运动会100米加油稿
2015/07/21 职场文书
大学生十八大感想
2015/08/11 职场文书
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python
使用GO语言实现Mysql数据库CURD的简单示例
2021/08/07 Golang
一次MySQL启动导致的事故实战记录
2021/09/15 MySQL
python函数的两种嵌套方法使用
2022/04/02 Python
MySQL添加索引特点及优化问题
2022/07/23 MySQL