zoukankan      html  css  js  c++  java
  • 模拟多级复选框效果--jquery

    今天又次体会到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);
                    }

    demo下载

  • 相关阅读:
    iOS开篇——UI之UILabel
    关于Block初识与自己的认识
    浅拷贝与深拷贝
    关于MacBook Pro选购
    准备考试 暂时停更
    Objective-C代理
    Objective-C协议初识
    Objective-C内存管理
    通讯录习题
    软件工程第二次作业 词频统计
  • 原文地址:https://www.cnblogs.com/qd4world/p/checkbox.html
Copyright © 2011-2022 走看看