使用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 相关文章推荐
自动生成文章摘要的代码[JavaScript 版本]
Mar 20 Javascript
for 循环性能比较 提高for循环的效率
Mar 19 Javascript
javascript 函数参数限制说明
Nov 19 Javascript
jQuery学习笔记[1] jQuery中的DOM操作
Dec 03 Javascript
使用js在页面中绘制表格核心代码
Sep 16 Javascript
jQuery Ajax使用FormData上传文件和其他数据后端web.py获取
Jun 11 jQuery
JavaScript变量作用域_动力节点Java学院整理
Jun 27 Javascript
原生js jquery ajax请求以及jsonp的调用方法
Aug 04 jQuery
Javascript中的作用域及块级作用域
Dec 08 Javascript
Vue中控制v-for循环次数的实现方法
Sep 26 Javascript
TensorFlow.js 微信小程序插件开始支持模型缓存的方法
Feb 21 Javascript
Vue3+elementui plus创建项目的方法
Dec 01 Vue.js
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动态生成版权所有信息的方法
2015/03/24 PHP
laravel 5.4中实现无限级分类的方法示例
2017/07/27 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
传递参数的标准方法(jQuery.ajax)
2008/11/19 Javascript
JavaScript CSS修改学习第一章 查找位置
2010/02/19 Javascript
javascript常用方法、属性集合及NodeList 和 HTMLCollection 的浏览器差异
2010/12/25 Javascript
javascript获得服务器端控件的ID的实现代码
2011/12/28 Javascript
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
Node.js实现简单聊天服务器
2014/06/20 Javascript
深入分析javascript中console命令
2016/08/14 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
Bootstrap基本插件学习笔记之Popover提示框(19)
2016/12/08 Javascript
详解基于node的前端项目编译时内存溢出问题
2017/08/01 Javascript
Angular实现预加载延迟模块的示例
2017/10/12 Javascript
JavaScript实现快速排序的方法分析
2018/01/10 Javascript
React从react-router路由上做登陆验证控制的方法
2018/05/10 Javascript
node.js实现上传文件功能
2019/07/15 Javascript
JQuery实现简单的复选框树形结构图示例【附源码下载】
2019/07/16 jQuery
vue子路由跳转实现tab选项卡
2019/07/24 Javascript
vue 实现模糊检索并根据其他字符的首字母顺序排列
2019/09/19 Javascript
Python聚类算法之基本K均值实例详解
2015/11/20 Python
Python基于递归实现电话号码映射功能示例
2018/04/13 Python
使用python爬取B站千万级数据
2018/06/08 Python
Python适配器模式代码实现解析
2019/08/02 Python
Matplotlib配色之Colormap详解
2021/01/05 Python
Ajax请求总共有多少种Callback
2016/07/17 面试题
写好自荐信要注意的问题
2013/11/10 职场文书
教师年度考核自我鉴定
2014/01/19 职场文书
大学毕业典礼演讲稿
2014/09/09 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
CSS3 制作的悬停缩放特效
2021/04/13 HTML / CSS
Python 用户输入和while循环的操作
2021/05/23 Python
MySQL 全文索引使用指南
2021/05/25 MySQL
idea 在springboot中使用lombok插件的方法
2021/08/02 Java/Android
海贼王十大逆天果实 魂魂果实上榜,岩浆果实攻击力最强
2022/03/18 日漫