zTree使用

zTree 是一个依靠 jQuery 实现的多功能 “树插件”, 而且拥有较好的浏览器兼容性,有着丰富的功能以及可以自定义样式,足以满足大部分业务的开发。

第一步先导入css及js文件

  1. <link rel="stylesheet" type="text/css" href="zTree/css/zTreeStyle/zTreeStyle.css">
  2. <script type="text/javascript" src="zTree/js/jquery.ztree.all.min.js"></script>

第二步在html页面创建ztree Div

  1. <div>
  2. <ul id="regionZTree" class="ztree"></ul>
  3. </div>

第三步初始化ztree

  1. var setting = {
  2. view: {
  3. dblClickExpand: false,//双击节点时,是否自动展开父节点的标识
  4. showLine: true,//是否显示节点之间的连线
  5. fontCss:{'color':'black','font-weight':'bold'},//字体样式函数
  6. selectedMulti: true //设置是否允许同时选中多个节点
  7. },
  8. check:{
  9. //chkboxType: { "Y": "ps", "N": "ps" },
  10. chkboxType: { "Y": "", "N": "" },
  11. chkStyle: "checkbox",//复选框类型
  12. enable: true //每个节点上是否显示 CheckBox
  13. },
  14. edit:{
  15. enable: true,
  16. editNameSelectAll: true,
  17. showRemoveBtn : true,
  18. showRenameBtn : true,
  19. removeTitle : "remove",
  20. renameTitle : "rename"
  21. },
  22. data: {
  23. simpleData: {//简单数据模式
  24. enable:true,
  25. idKey: "id",
  26. pIdKey: "IPARENTID",
  27. rootPId: null
  28. }
  29. },
  30. callback: {
  31. beforeExpand:zTreeBeforeExpand, // 用于捕获父节点展开之前的事件回调函数,并且根据返回值确定是否允许展开操作
  32. }
  33. };
  34. zTreeObj = $.fn.zTree.init($("#regionZTree"), setting, dominZTree);

下面是ztree操作的效果图

下面是ztree增删改以及选中的代码

  1. /**
  2. * 添加节点
  3. * @param obj
  4. */
  5. function addZTreeNode(obj) {
  6. var treeObj = $.fn.zTree.getZTreeObj("regionZTree");
  7. var parentZNode = treeObj.getSelectedNodes(); //获取父节点
  8. var newNode = obj;
  9. newNode.nodeFlg = 1; // 可以自定义节点标识
  10. newNode = treeObj.addNodes(parentZNode[0], newNode,true);
  11. }
  12. /**
  13. * 修改子节点
  14. * @param obj
  15. */
  16. function editZTreeNode(obj) {
  17. var zTree = $.fn.zTree.getZTreeObj("regionZTree");
  18. var nodes = zTree.getSelectedNodes();
  19. for(var i = 0;i<nodes.length;i++)
  20. {
  21. nodes[i].name = obj;
  22. zTree.updateNode(nodes[i]);
  23. }
  24. }
  25.  
  26. /**
  27. * 删除子节点 --选中节点
  28. * @param obj
  29. */
  30. function removeZTreeNodeBySelect() {
  31. var zTree = $.fn.zTree.getZTreeObj("regionZTree");
  32. var nodes = zTree.getSelectedNodes(); //获取选中节点
  33. for (var i=0;i<nodes.length; i++) {
  34. zTree.removeNode(nodes[i]);
  35. }
  36. }
  37.  
  38. /**
  39. * 删除子节点 --勾选节点
  40. * @param obj
  41. */
  42. function removeZTreeNodeByChecked() {
  43. var zTree = $.fn.zTree.getZTreeObj("regionZTree");
  44. var nodes = zTree.getCheckedNodes(true); //获取勾选节点
  45. for (var i=0;i<nodes.length; i++) {
  46. zTree.removeNode(nodes[i]);
  47. }
  48. }
  49.  
  50. /**
  51. * 根据节点id 批量删除子节点
  52. * @param obj
  53. */
  54. function removeZTreeNodebPi(obj) {
  55. var idnodes = obj.split(",");
  56. var zTree = $.fn.zTree.getZTreeObj("regionZTree");
  57. var nodes = zTree.getSelectedNodes();
  58. for (var i=0;i<nodes.length; i++) {
  59. var nodes = zTree.getNodeByParam("id", nodes[i]);
  60. zTree.removeNode(nodes);
  61. }
  62. }
  63. /**
  64. * 选择节点
  65. * @param obj
  66. */
  67. function selectzTreeNode(obj) {
  68. var zTree = $.fn.zTree.getZTreeObj("regionZTree");
  69. var node = zTree.getNodeByParam("id",obj);
  70. if(node!=null) {
  71. zTree.selectNode(node, true);//指定选中ID的节点
  72. }
  73. }

zTree基础的更多相关文章

  1. js插件ztree使用

    最新给公司后台写了一个配置页面,在网上搜到一个js插件ztree,记录一下使用心得. 首先说一下ztree官网,好多方法我都是从官网api上学习的,官网地址http://www.treejs.cn/v ...

  2. sqlalchemy tree 树形分类 无限极分类的管理。预排序树,左右值树。sqlalchemy-mptt

    简介: 无限极分类是一种比较常见的数据格式,生成组织结构,生成商品分类信息,权限管理当中的细节权限设置,都离不开无限极分类的管理. 常见的有链表式,即有一个Pid指向上级的ID,以此来设置结构.写的时 ...

  3. 项目一:项目第二天 Jquery ztree使用展示菜单数据 2、 基础设置需求分析 3、 搭建项目框架环境--ssh(复习) 4、 SpringData-JPA持久层入门案例(重点) 5、 Easyui menubutton菜单按钮使用 6、 Easyui messager消息框使用

    1. Jquery ztree使用展示菜单数据 2. 基础设置需求分析 3. 搭建项目框架环境--ssh(复习) 4. SpringData-JPA持久层入门案例(重点) 5. Easyui menu ...

  4. zTree 循环树

    /// <summary> /// 初始化第一次节点加载 /// </summary> /// protected string _menu = string.Empty; p ...

  5. web前端基础知识及快速入门指南

    web前端基础知识及快速入门指南 做前端开发有几个月了,虽然说是几个月,但是中间断断续续的上课.考试以及其它杂七杂八的事情,到现在居然一直感觉自己虽然很多前端的知识很眼熟,却也感觉自己貌似也知识在门口 ...

  6. Ztree使用

    基础: <link rel="stylesheet" href="../../../css/zTreeStyle/zTreeStyle.css" type ...

  7. JeeSite 企业信息管理系统基础框架

    1. JeeSite概述 1.1. 简介 JeeSite是一个开源的企业信息管理系统基础框架.主要定位于“企业信息管理”领域,可用作企业信息管理类系统.网站后台管理类系统等.JeeSite是非常强调开 ...

  8. 前框 (一个)zTree 从数据库树形菜单动态加载

    这些天做动态菜单使用此插件.现在有一个非常广泛的开源框架,最新QUI框架是菜单部分使用这个插件开发,因此,它是非常值获取深入的研究和探讨,通过使用非常丰富的感觉功能,己开发和编写,官网上有非常详尽的A ...

  9. Jquery ztree树插件2

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

随机推荐

  1. [开源 .NET 跨平台 Crawler 数据采集 爬虫框架: DotnetSpider] [一] 初衷与架构设计

    [DotnetSpider 系列目录] 一.初衷与架构设计 二.基本使用 三.配置式爬虫 四.JSON数据解析与配置系统 五.如何做全站采集 为什么要造轮子 同学们可以去各大招聘网站查看一下爬虫工程师 ...

  2. mysql 自带的性能压力测试工具

    mysqlslap -h127.0.0.1 -uroot -p --concurrency=100 --iterations=1 --auto-generate-sql --auto-generate ...

  3. 【XSY1596】旅行 期望DP

    题目大意 有\(m\)个游客, 他们都依次访问城市\(1,2,3,\ldots,n\), 第\(i\)个游客到达任意一个城市后有\(p_i\)的概率会停下, 不再继续前行 设\(c_i\)个乘客经过了 ...

  4. 【XSY1551】往事 广义后缀数组 线段树合并

    题目大意 给你一颗trie树,令\(s_i\)为点\(i\)到根的路径上的字符组成的字符串.求\(max_{u\neq v}(LCP(s_u,s_v)+LCS(s_u,s_v))\) \(LCP=\) ...

  5. Xadmin 组件基础使用以及全局配置

    xadmin 的安装 方式一 pip 安装 会因为编码问题导致报错 因此需要下载 更改 README.rst 后本地安装 详情点击这里 方式二 源码方式安装 在 github 上下载源码后 将 xad ...

  6. 【hjmmm网络流24题补全计划】

    本文食用方式 按ABC--分层叙述思路 可以看完一步有思路后自行思考 飞行员配对问题 题目链接 这可能是24题里最水的一道吧... 很显然分成两个集合 左外籍飞行员 右皇家飞行员 跑二分图最大匹配 输 ...

  7. input type=file上传控件老问题

    // 1.用INPUT控制上传文件时,点击INPUT控件出现文件选择框. // 2.如果在手机上使用时,一般不会出现这种较丑的 // 3.于是就自然想到将控件隐藏,然后用一个按钮代替,点击按钮时在函数 ...

  8. 「SCOI2014」方伯伯运椰子 解题报告

    「SCOI2014」方伯伯运椰子 可以看出是分数规划 然后我们可以看出其实只需要改变1的流量就可以了,因为每次改变要保证流量守恒,必须流成一个环,在正负性确定的情况下,变几次是无所谓的. 然后按照套路 ...

  9. C/C++ 控制台窗口暂停

    为什么我看不到控制台的输出结果? 在编写C++程序中,经常会出现,控制台窗口一闪就消失了的情况 为什么会这样? 原因简单到有点可笑:因为程序运行结束了 对于控制台程序,操作系统让它开始运行前会为它造一 ...

  10. JDK8中的并行流

    1.IntStream.parallel():获取并行流处理 2. Collection中调用parallelStream()获取并行流 3.并行排序Arrays.parallelSort()