使用jQuery+EasyUI实现CheckBoxTree的级联选中特效


Posted in Javascript onDecember 06, 2015

需求:子结点选中,父节点随之选中,父节点取消,子节点随之取消

代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <link href="js/themes/default/easyui.css" rel="stylesheet" />
  <link href="js/themes/icon.css" rel="stylesheet" />
  <script src="js/jquery-1.8.0.min.js"></script>
  <script src="js/jquery.easyui.min.js"></script>
  <script src="js/locale/easyui-lang-zh_CN.js"></script>
  <script type="text/javascript">
    var data = [{
      "id": 1,
      "text": "系统",
      "children": [{
        "id": 11,
        "text": "用户管理",
        "children": [{
          "id": 19,
          "text": "增加"
        }, {
          "id": 3,
          "text": "修改"
        }, {
          "id": 5,
          "text": "删除"
        }]
      }, {
        "id": 12,
        "text": "角色管理",
        "children": [{
          "id": 13,
          "text": "增加"
        }, {
          "id": 3,
          "text": "修改"
        }, {
          "id": 5,
          "text": "删除"
        }]
      }]
    }, {
      "id": 2,
      "text": "其他",
      "state": "closed"
    }];

    $(function () {
      $("#tt").tree({
        data: data,
        checkbox: true,
        cascadeCheck: false,
        onCheck: function (node, checked) {
          if (checked) {
            var parentNode = $("#tt").tree('getParent', node.target);
            if (parentNode != null) {
              $("#tt").tree('check', parentNode.target);
            }
          } else {
            var childNode = $("#tt").tree('getChildren', node.target);
            if (childNode.length > 0) {
              for (var i = 0; i < childNode.length; i++) {
                $("#tt").tree('uncheck', childNode[i].target);
              }
            }
          }
        }
      });
    });

    function getChecked()
    {
      var arr = [];
      var checkeds = $('#tt').tree('getChecked', 'checked');
      for (var i = 0; i < checkeds.length; i++) {
        arr.push(checkeds[i].id);
      }
      alert(arr.join(','));
    }

  </script>
</head>
<body>
  <ul id="tt"></ul>
  <input type="button" value="获取选中" onclick="getChecked()" />
</body>
</html>

如图:

使用jQuery+EasyUI实现CheckBoxTree的级联选中特效

Javascript 相关文章推荐
基于JQUERY的多级联动代码
Jan 24 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来
Jan 23 Javascript
深入理解JS中的变量及作用域、undefined与null
Mar 04 Javascript
jQuery如何防止这种冒泡事件发生
Feb 27 Javascript
JS扩展类,克隆对象与混合类实例分析
Nov 26 Javascript
ReactJs设置css样式的方法
Jun 08 Javascript
javascript+jQuery实现360开机时间显示效果
Nov 03 jQuery
微信小程序实现获取用户信息并存入数据库操作示例
May 07 Javascript
JS数据类型STRING使用实例解析
Dec 18 Javascript
JS实现音量控制拖动
Jan 15 Javascript
Vue的自定义组件不能使用click方法的解决
Jul 28 Javascript
Node.js实现断点续传
Jun 23 Javascript
javascript字符串函数汇总
Dec 06 #Javascript
win7下安装配置node.js+express开发环境
Dec 06 #Javascript
分享使用AngularJS创建应用的5个框架
Dec 05 #Javascript
如何利用AngularJS打造一款简单Web应用
Dec 05 #Javascript
使用CDN和AJAX加速WordPress中jQuery的加载
Dec 05 #Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
Dec 04 #Javascript
使用jQuery在移动页面上添加按钮和给按钮添加图标
Dec 04 #Javascript
You might like
PHP实现HTML生成PDF文件的方法
2014/11/07 PHP
在 Laravel 项目中使用 webpack-encore的方法
2019/07/21 PHP
Js callBack 返回前一页的js方法
2008/11/30 Javascript
JavaScript 解析Json字符串的性能比较分析代码
2009/12/16 Javascript
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
2011/04/27 Javascript
javascript中style.left和offsetLeft的用法说明
2014/03/07 Javascript
点击A元素触发B元素的事件在IE8下会识别成A元素
2014/09/04 Javascript
jQuery元素选择器用法实例
2014/12/23 Javascript
jQuery实现DIV层收缩展开的方法
2015/02/27 Javascript
简单解析JavaScript中的__proto__属性
2016/05/10 Javascript
javascript基本数据类型和转换
2017/03/17 Javascript
vue与bootstrap实现时间选择器的示例代码
2017/08/26 Javascript
详解JavaScript中的数组合并方法和对象合并方法
2018/05/11 Javascript
详解在不使用ssr的情况下解决Vue单页面SEO问题
2018/11/08 Javascript
微信小程序实现复选框效果
2018/12/28 Javascript
Vue实现渲染数据后控制滚动条位置(推荐)
2019/12/09 Javascript
5个你不知道的JavaScript字符串处理库(小结)
2020/06/01 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
python进阶教程之函数对象(函数也是对象)
2014/08/30 Python
python中文编码问题小结
2014/09/28 Python
Python SQLite3简介
2018/02/22 Python
python实现人人自动回复、抢沙发功能
2018/06/08 Python
python爬取微信公众号文章
2018/08/31 Python
Django实现简单网页弹出警告代码
2019/11/15 Python
opencv+python实现均值滤波
2020/02/19 Python
django 读取图片到页面实例
2020/03/27 Python
python音频处理的示例详解
2020/12/23 Python
牵手50新加坡:专为黄金岁月的单身人士而设的交友网站
2020/08/16 全球购物
大学生的应聘自我评价
2013/12/13 职场文书
软件毕业生个人鉴定
2014/03/03 职场文书
关于国庆节的演讲稿
2014/09/05 职场文书
PyTorch 如何自动计算梯度
2021/05/23 Python
为什么在foreach循环中JAVA集合不能添加或删除元素
2021/06/11 Java/Android
Python中字符串对象语法分享
2022/02/24 Python
Python实现自动玩连连看的脚本分享
2022/04/04 Python
Java实现字符串转为驼峰格式的方法详解
2022/07/07 Java/Android