无限树Jquery插件zTree的使用方法

其实Ztree官网已经有详细的API文档,一切以官网上的说明为准,我在此只是结合实践总结几条常用的ztree的功能特性.

  (ztree的语法结构是基于key-value的形式配置)

 1:支持异步加载数据

  •   语法配置:   
复制代码
async: {
        enable: true, 

        url:'abc.ashx',

        otherParam: { "request": "requestname" }

         }
复制代码
  •   简要说明:

       enable :设置 zTree 是否开启异步加载模式.

       url:Ajax 获取数据的 URL 地址.

       otherParam:Ajax 请求提交的静态参数键值对.相当于ajax中的data参数.

2:加载数据并绑定,一般都是定义数据结构实体即model,此数据结构要包含层级关系通常包括:ID,父ID,Name.

  •     配置语法:
data: {
        simpleData: {
        enable: true
                }
        }

    或者

data: {
        key: {
        children: "childrens"
           }
          }
  •      简要说明:

       simpleData:即可采用数组作为数据源绑定.此时异步加载的数据可为平行结构.

         children: 指定节点数据中保存子节点数据的属性名称,此时异步加载的数据为树的折叠结构;所以后端加载数据时要使用递归算法.

3:支持单选,复选功能

  •   语法配置:
复制代码
check: {
        enable: true,
             chkStyle: "checkbox",
        radioType: "all"
        chkboxType:{ "Y": "", "N": "" }
         },

data: {
        key: {
        checked: "IsChecked"
           }
          }
复制代码
  •   简要说明:

      enable:设置 zTree 的节点上是否显示 checkbox / radio

      chkStyle:勾选框类型(checkbox 或 radio)

      radioType:radio 的分组范围

      chkboxType:勾选 checkbox 对于父子节点的关联关系

      checked:为加载数据后复选框是否勾选.IsChecked为后端数据结构model中定义的字段.

4:支持添加子节点,编辑节点,删除节点事件

  我这里介绍如何采用自定义添加,编辑,删除按钮的方式

  •     语法配置:
view: {
        addHoverDom: addHoverDom,
        removeHoverDom: removeHoverDom
         }

     其中addHoverDom 函数为:

复制代码
function addHoverDom(treeId, treeNode) {
      var sObj = $("#" + treeNode.tId + "_span");
      if ($("#addBtn_" + treeNode.id).length > 0) return;
      var str= "<a id='addBtn_" + treeNode.id + "'  οnclick='自定义函数1(" + treeNode.DepartmentID + ")'>添加子节点</a>";
      str+= "<a id='addBtn1_" + treeNode.id + "'  οnclick='自定义函数2(" + treeNode.DepartmentID + ")'>编辑节点</a>";
      str+= "<a id='addBtn2_" + treeNode.id + "'  οnclick='自定义函数3(" + treeNode.DepartmentID + ")'>删除节点</a>";
      sObj.after(str);
                        };
复制代码

      其中removeHoverDom函数为:

function removeHoverDom(treeId, treeNode) {
      $("#addBtn_" + treeNode.id).unbind().remove();
      $("#addBtn1_" + treeNode.id).unbind().remove();
      $("#addBtn2_" + treeNode.id).unbind().remove();
                           };
  •      简要说明:

  addHoverDom:用于当鼠标移动到节点上时,显示用户自定义控件,显示隐藏状态同 zTree 内部的编辑、删除按钮

  removeHoverDom:用于当鼠标移出节点时,隐藏用户自定义控件,显示隐藏状态同 zTree 内部的编辑、删除按钮

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值