无限树Jquery插件zTree的常用功能特性总结
作者:bea
其实Ztree官网已经有详细的API文档,一切以官网上的说明为准,我在此只是结合实践总结几条常用的ztree的功能特性. (ztree的语法结构是基于key-value的形式配置) 1:支持异步加载数据 语法配置: async: {enable: true, url:'abc.ashx',otherParam: { "request": "requestname" }} 简要说明: enable :设置 zTree 是否开启异步加载模式. url:Ajax 获取数据的
其实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",
checked: "IsChecked"
}
}
简要说明:
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 + "' onclick='自定义函数1(" + treeNode.DepartmentID + ")'>添加子节点</a>";
str+= "<a id='addBtn1_" + treeNode.id + "' onclick='自定义函数2(" + treeNode.DepartmentID + ")'>编辑节点</a>";
str+= "<a id='addBtn2_" + treeNode.id + "' onclick='自定义函数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 内部的编辑、删除按钮
有用 | 无用
(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",
checked: "IsChecked"
}
}
简要说明:
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 + "' onclick='自定义函数1(" + treeNode.DepartmentID + ")'>添加子节点</a>";
str+= "<a id='addBtn1_" + treeNode.id + "' onclick='自定义函数2(" + treeNode.DepartmentID + ")'>编辑节点</a>";
str+= "<a id='addBtn2_" + treeNode.id + "' onclick='自定义函数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 内部的编辑、删除按钮
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- JavaScript中合并数组的N种方法
- JavaScript的null和undefined区别示例介绍
- JavaScript中变量声明有var和没var的区别示例介绍
- JavaScript的arguments对象应用示例
- avascript中的自执行匿名函数应用示例
- JavaScript function 的 length 属性使用介绍
- css与javascript跨浏览器兼容性总结
- 一个通过script自定义属性传递配置参数的方法
- 一个字符串反转函数可实现字符串倒序
- jquery实现类似淘宝星星评分功能有截图
- javascript使用数组的push方法完成快速排序
- 一款由jquery实现的整屏切换特效
- JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
- 用javascript关闭本窗口不弹出询问框的方法
- javascript trim函数在IE下不能用的解决方法
- javascript在IE下trim函数无法使用的解决方法
- 如何用JavaScript定义一个类
- jquery实现类似淘宝星星评分功能实例
- jquery根据锚点offset值实现动画切换