jquery模拟多级复选框效果的简单实例


Posted in Javascript onJune 08, 2016

今天又次体会到jquery的强大了,做了个多级复选框的效果,代码总共就20+行就over了。

我又想用js来做一个看看,才写了几个方法就写不动了,兼容性要考虑很多,而且代码量直线上升。

主要分享下jquery的这个效果的实现。代码块分两块:

一是全选的效果,就是点击全选的复选框时它的子孙都相应被选中或者未选中。这个很好做,代码如下:

evtEle.parent().next(".checks").find("input:checkbox").attr("checked", evtEle[0].checked);//evtEle是点击的复选框

二是当前复选框的父框根据当前框的兄弟是否全选中来决定父框是否选中,再继续往上看父框的父框等。
当全选中时这里的实现使用parents来得到所有的父框,对每一个的操作结合each来完成。

当非全选中时父框依次失去被选中。代码如下:

if (evtEle.is("input:checked")) {
          evtEle.parents(".checks").each(function () {
            !$(this).children("p").children("input:checkbox").filter(function () {
              return !this.checked;
            })[0] && $(this).prev().children("input:checkbox").attr("checked", "checked");
          });
        } else {
          evtEle.parents(".checks").prev().children("input:checkbox").attr("checked", false);
        }

以上这篇jquery模拟多级复选框效果的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Mootools 1.2教程(2) DOM选择器
Sep 14 Javascript
深入理解JavaScript系列(15) 函数(Functions)
Apr 12 Javascript
JavaScript正则表达式之multiline属性的应用
Jun 16 Javascript
ES5 ES6中Array对象去除重复项的方法总结
Apr 27 Javascript
原生js简单实现放大镜特效
May 16 Javascript
vue获取input输入值的问题解决办法
Oct 17 Javascript
在Vue项目中使用jsencrypt.js对数据进行加密传输的方法
Apr 17 Javascript
layui使用label标签的方法
Sep 14 Javascript
javascript实现鼠标点击生成文字特效
Dec 24 Javascript
javascript实现简单搜索功能
Mar 26 Javascript
vue.js click点击事件获取当前元素对象的操作
Aug 07 Javascript
js+canvas实现刮刮奖功能
Sep 13 Javascript
Jquery揭秘系列:ajax原生js实现详解(推荐)
Jun 08 #Javascript
JavaScript中style.left与offsetLeft的使用及区别详解
Jun 08 #Javascript
Js+Ajax,Get和Post在使用上的区别小结
Jun 08 #Javascript
jQuery.Uploadify插件实现带进度条的批量上传功能
Jun 08 #Javascript
JS与Ajax Get和Post在使用上的区别实例详解
Jun 08 #Javascript
浅谈JS原生Ajax,GET和POST
Jun 08 #Javascript
原生 JS Ajax,GET和POST 请求实例代码
Jun 08 #Javascript
You might like
全国FM电台频率大全 - 17 湖北省
2020/03/11 无线电
php使用PDO方法详解
2014/12/27 PHP
php 在线导入mysql大数据程序
2015/06/11 PHP
Zend Framework+smarty用法实例详解
2016/03/19 PHP
示例详解Laravel的注册重构
2016/08/14 PHP
PHP使用函数用法详解
2018/09/30 PHP
PHP INT类型在内存中占字节详解
2019/07/20 PHP
javascript 继承实现方法
2009/08/26 Javascript
javascript对象之内置对象Math使用方法
2010/04/16 Javascript
深入理解JavaScript系列(31):设计模式之代理模式详解
2015/03/03 Javascript
JSON字符串和对象之间的转换详解
2015/05/26 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
2016/01/07 Javascript
JS实现页面进入和返回定位到具体位置
2016/12/08 Javascript
jQuery Mobile漏洞会有跨站脚本攻击风险
2017/02/12 Javascript
JavaScript数组去重算法实例小结
2018/05/07 Javascript
vue中的provide/inject的学习使用
2018/05/09 Javascript
vue路由组件按需加载的几种方法小结
2018/07/12 Javascript
微信小程序实现弹出菜单
2018/07/19 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
layui给下拉框、按钮状态、时间赋初始值的方法
2019/09/10 Javascript
pyramid配置session的方法教程
2013/11/27 Python
Python异常处理总结
2014/08/15 Python
Python使用爬虫猜密码
2016/02/19 Python
Python中对象迭代与反迭代的技巧总结
2016/09/17 Python
python递归查询菜单并转换成json实例
2017/03/27 Python
python获取多线程及子线程的返回值
2017/11/15 Python
对numpy中布尔型数组的处理方法详解
2018/04/17 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
python程序控制NAO机器人行走
2019/04/29 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
python的range和linspace使用详解
2019/11/27 Python
对pytorch中x = x.view(x.size(0), -1) 的理解说明
2021/03/03 Python
英国图书音像网站:Hive.co.uk(图书、电子书、DVD、蓝光、音乐CD等)
2017/10/16 全球购物
婴儿鞋,独特的婴儿服装和配件:Zutano
2018/11/03 全球购物
文秘大学生求职信
2014/02/25 职场文书