From e02cfb1940c721efa29d7766763e5d5beaf46189 Mon Sep 17 00:00:00 2001 From: Lizi
zTree v3.x 内部的全部方法都可以通过 $.fn.zTree._z 进行调用,开放出来是为了更便于大家开发制作自己的 zTree 插件。
-如无特殊需求请勿使用此对象,以及修改此对象内部的各个函数。
-从 zTree v3.4 开始提供销毁 zTree 的方法。
-1、用此方法可以销毁指定 treeId 的 zTree,也可以销毁当前页面全部的 zTree。
-2、销毁指定 treeId 的 zTree 也可以使用 zTreeObj.destroy() 方法。
-3、重新使用已经被销毁的树,必须要使用 init 方法进行初始化。
-zTree 的 DOM 容器的 id
-省略 treeId,表示销毁当前页面全部的 zTree
-目前无任何返回值
-$.fn.zTree.destroy("treeDemo");
- $.fn.zTree.destroy();
-zTree v3.x 专门提供的根据 treeId 获取 zTree 对象的方法。
-必须在初始化 zTree 以后才可以使用此方法。
-有了这个方法,用户不再需要自己设定全局变量来保存 zTree 初始化后得到的对象了,而且在所有回调函数中全都会返回 treeId 属性,用户可以随时使用此方法获取需要进行操作的 zTree 对象
-zTree 的 DOM 容器的 id
-zTree 对象,提供操作 zTree 的各种方法,对于通过 js 操作 zTree 来说必须通过此对象
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-zTree 初始化方法,创建 zTree 必须使用此方法
-1、页面需要进行 W3C 申明,例如:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">。
-2、需要首先加载 jquery-1.4.2.js 或其他更高版本的 jQuery 。
-3、需要加载 jquery-ztree.core-3.0.js,如果需要用到 编辑功能 或 checkbox / radio 还需要分别加载 jquery-ztree.exedit-3.0.js 和 jquery-ztree.excheck-3.0.js 。
-4、需要加载 zTreeStyle.css 以及 zTreeStyle 目录下的 img 文件。
-5、如果需要使用自定义图标请参考相应的Demo。
-6、请注意设置 zTree 的容器样式 class="ztree",其中 "ztree" 这个 className,可以根据需要随意修改,别忘了修改 css 中对应名字就是了,对于容器如果需要增加其他特殊样式,可根据自己的需要进行修改。
-用于展现 zTree 的 DOM 容器
-zTree 的配置数据,具体请参考 “setting 配置详解”中的各个属性详细说明
-zTree 的节点数据,具体请参考 “treeNode 节点数据详解”中的各个属性详细说明
-1、v3.x 支持单独添加一个节点,即如果只新增一个节点,不用必须包在数组中
-2、如果需要异步加载根节点,可以设置为 null 或 [ ]
-3、使用简单数据模式,请参考 setting.data.simpleData 内的属性说明
-zTree 对象,提供操作 zTree 的各种方法,对于通过 js 操作 zTree 来说必须通过此对象
-如果不需要自行设定全局变量保存,可以利用 $.fn.zTree.getZTreeObj 方法随时获取
-<!DOCTYPE html>
-<HTML>
- <HEAD>
- <TITLE> ZTREE DEMO </TITLE>
- <meta http-equiv="content-type" content="text/html; charset=UTF-8">
- <link rel="stylesheet" href="zTreeStyle/zTreeStyle.css" type="text/css">
- <script type="text/javascript" src="jquery-1.4.2.js"></script>
- <script type="text/javascript" src="jquery.ztree.core-3.5.js"></script>
-<!--
- <script type="text/javascript" src="jquery.ztree.excheck-3.5.js"></script>
- <script type="text/javascript" src="jquery.ztree.exedit-3.5.js"></script>
--->
- <SCRIPT type="text/javascript" >
- var zTreeObj,
- setting = {
- view: {
- selectedMulti: false
- }
- },
- zTreeNodes = [
- {"name":"网站导航", open:true, children: [
- { "name":"google", "url":"http://g.cn", "target":"_blank"},
- { "name":"baidu", "url":"http://baidu.com", "target":"_blank"},
- { "name":"sina", "url":"http://www.sina.com.cn", "target":"_blank"}
- ]
- }
- ];
-
- $(document).ready(function(){
- zTreeObj = $.fn.zTree.init($("#tree"), setting, zTreeNodes);
-
- });
- </SCRIPT>
- </HEAD>
-
-<BODY>
-<ul id="tree" class="ztree" style="width:230px; overflow:auto;"></ul>
- </BODY>
-</HTML>
-异步加载时需要自动提交父节点属性的参数。[setting.async.enable = true 时生效]
-默认值:[ ]
-1、将需要作为参数提交的属性名称,制作成 Array 即可,例如:["id", "name"]
-2、可以设置提交时的参数名称,例如 server 只接受 zId : ["id=zId"]
-var setting = {
- async: {
- enable: true,
- url: "http://host/getNode.php",
- autoParam: ["id"]
- }
-};
-假设 异步加载 父节点(node = {id:1, name:"test"}) 的子节点时,将提交参数 id=1
-......
- var setting = {
- async: {
- enable: true,
- url: "http://host/getNode.php",
- autoParam: ["id=zId"]
- }
-};
-假设 对父节点 node = {id:1, name:"test"},进行异步加载时,将提交参数 zId=1
-......
-Ajax 提交参数的数据类型。[setting.async.enable = true 时生效]
-默认值:"application/x-www-form-urlencoded"
-contentType = "application/x-www-form-urlencoded" 可以满足绝大部分请求,按照标准的 Form 格式提交参数
-contentType = "application/json" 可以满足 .Net 的编程需要,按照 JSON 格式提交参数
-var setting = {
- async: {
- enable: true,
- contentType: "application/json",
- url: "http://host/getNode.php",
- autoParam: ["id", "name"]
- }
-};
-......
-用于对 Ajax 返回数据进行预处理的函数。[setting.async.enable = true 时生效]
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-进行异步加载的父节点 JSON 数据对象
-对根进行异步加载时,parentNode = null
-异步加载获取到的数据转换后的 Array(JSON) / JSON / String 数据对象
-v3.4开始 支持 XML 数据格式的 String
-返回值是 zTree 支持的JSON 数据结构即可。
-v3.x 支持单个 JSON 节点数据进行加载
-function ajaxDataFilter(treeId, parentNode, responseData) {
- if (responseData) {
- for(var i =0; i < responseData.length; i++) {
- responseData[i].name += "_filter";
- }
- }
- return responseData;
-};
-var setting = {
- async: {
- enable: true,
- url: "http://host/getNode.php",
- dataFilter: ajaxDataFilter
- }
-};
-......
-Ajax 获取的数据类型。[setting.async.enable = true 时生效]
-默认值:"text"
-dataType = "text" 可以满足绝大部分请求
-其余 dataType 类型请参考 jQuery ajax 中的 dataType 参数
-var setting = {
- async: {
- enable: true,
- dataType: "text",
- url: "http://host/getNode.php",
- autoParam: ["id", "name"]
- }
-};
-......
-设置 zTree 是否开启异步加载模式
-默认值:false
-true 表示 开启 异步加载模式
-false 表示 关闭 异步加载模式
-如果设置为 true,请务必设置 setting.async 内的其它参数。
-如果需要根节点也异步加载,初始化时 treeNodes 参数设置为 null 即可。
-var setting = {
- async: {
- enable: true,
- url: "http://host/getNode.php",
- autoParam: ["id", "name"]
- }
-};
-......
-Ajax 请求提交的静态参数键值对。[setting.async.enable = true 时生效]
-默认值:[ ]
-可以为空[ ],如果有 key,则必须存在 value。 例如:[key, value]
-直接用 JSON 格式制作键值对,例如:{ key1:value1, key2:value2 }
-var setting = {
- async: {
- enable: true,
- url: "http://host/getNode.php",
- otherParam: ["id", "1", "name", "test"]
- }
-};
-进行异步加载时,将提交参数 id=1&name=test
- var setting = {
- async: {
- enable: true,
- url: "http://host/getNode.php",
- otherParam: { "id":"1", "name":"test"}
- }
-};
-进行异步加载时,将提交参数 id=1&name=test
-Ajax 的 http 请求模式。[setting.async.enable = true 时生效]
-默认值:"post"
-type = "post" 表示异步加载采用 post 方法请求
-type = "get" 表示异步加载采用 get 方法请求
-对应于 jQuery ajax 中的 type 参数
-var setting = {
- async: {
- enable: true,
- type: "get",
- url: "http://host/getNode.php",
- autoParam: ["id", "name"]
- }
-};
-......
-Ajax 获取数据的 URL 地址。[setting.async.enable = true 时生效]
-默认值:""
-设置固定的异步加载 url 字符串,请注意地址的路径,确保页面能正常加载
-url 内也可以带参数,这些参数就只能是通过 get 方式提交了,并且请注意进行转码
-对应 zTree 的 treeId,便于用户操控
-需要异步加载子节点的的父节点 JSON 数据对象
-针对根进行异步加载时,treeNode = null
-返回值同 String 格式的数据
-var setting = {
- async: {
- enable: true,
- url: "nodes.php",
- autoParam: ["id", "name"]
- }
-};
-......
- function getAsyncUrl(treeId, treeNode) {
- return treeNode.isParent ? "nodes1.php" : "nodes2.php";
-};
-var setting = {
- async: {
- enable: true,
- url: getAsyncUrl,
- autoParam: ["id", "name"]
- }
-};
-......
-用于捕获异步加载之前的事件回调函数,zTree 根据返回值确定是否允许进行异步加载
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-进行异步加载的父节点 JSON 数据对象
-针对根进行异步加载时,treeNode = null
-返回值是 true / false
-如果返回 false,zTree 将不进行异步加载,也无法触发 onAsyncSuccess / onAsyncError 事件回调函数
-function zTreeBeforeAsync(treeId, treeNode) {
- return (treeNode.id !== 1);
-};
-var setting = {
- callback: {
- beforeAsync: zTreeBeforeAsync
- }
-};
-......
-用于捕获 勾选 或 取消勾选 之前的事件回调函数,并且根据返回值确定是否允许 勾选 或 取消勾选
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-进行 勾选 或 取消勾选 的节点 JSON 数据对象
-返回值是 true / false
-如果返回 false,将不会改变勾选状态,并且无法触发 onCheck 事件回调函数
-function zTreeBeforeCheck(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeCheck: zTreeBeforeCheck
- }
-};
-......
-用于捕获单击节点之前的事件回调函数,并且根据返回值确定是否允许单击操作
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-被单击的节点 JSON 数据对象
-节点被点击后的选中操作类型,详细看下表
-clickFlag | selectedMulti | autoCancelSelected && event.ctrlKey / metaKey | isSelected | 选中操作 |
1 | true | false | false | 普通选中 |
1 | true | false | true | 普通选中 |
2 | true | true | false | 追加选中 |
0 | true | true | true | 取消选中 |
1 | false | false | false | 普通选中 |
1 | false | false | true | 普通选中 |
1 | false | true | false | 普通选中 |
0 | false | true | true | 取消选中 |
返回值是 true / false
-如果返回 false,zTree 将不会选中节点,也无法触发 onClick 事件回调函数
-function zTreeBeforeClick(treeId, treeNode, clickFlag) {
- return (treeNode.id !== 1);
-};
-var setting = {
- callback: {
- beforeClick: zTreeBeforeClick
- }
-};
-......
-用于捕获父节点折叠之前的事件回调函数,并且根据返回值确定是否允许折叠操作
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-要折叠的父节点 JSON 数据对象
-返回值是 true / false
-如果返回 false,zTree 将不会折叠节点,也无法触发 onCollapse 事件回调函数
-function zTreeBeforeCollapse(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeCollapse: zTreeBeforeCollapse
- }
-};
-......
-用于捕获 zTree 上鼠标双击之前的事件回调函数,并且根据返回值确定触发 onDblClick 事件回调函数
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-鼠标双击时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-返回值是 true / false
-如果返回 false,将仅仅无法触发 onDblClick 事件回调函数,对其他操作无任何影响
-此事件回调函数对双击节点展开功能无任何影响,如果需要设置请参考 setting.view.dblClickExpand 属性
-function zTreeBeforeDblClick(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeDblClick: zTreeBeforeDblClick
- }
-};
-......
-用于捕获节点被拖拽之前的事件回调函数,并且根据返回值确定是否允许开启拖拽操作
-默认值:null
-被拖拽的节点 treeNodes 所在 zTree 的 treeId,便于用户操控
-要被拖拽的节点 JSON 数据集合
-v3.x 允许多个同级节点同时被拖拽,因此将此参数修改为 Array(JSON)
-如果拖拽时多个被选择的节点不是同级关系,则只能拖拽鼠标当前所在位置的节点
-返回值是 true / false
-如果返回 false,zTree 将终止拖拽,也无法触发 onDrag / beforeDrop / onDrop 事件回调函数
-function zTreeBeforeDrag(treeId, treeNodes) {
- return false;
-};
-var setting = {
- edit: {
- enable: true
- },
- callback: {
- beforeDrag: zTreeBeforeDrag
- }
-};
-......
-用于捕获拖拽节点移动到折叠状态的父节点后,即将自动展开该父节点之前的事件回调函数,并且根据返回值确定是否允许自动展开操作
-默认值:null
-需要被展开的父节点 treeNode 所在 zTree 的 treeId,便于用户操控
-要被自动展开的父节点 JSON 数据对象
-返回值是 true / false
-如果返回 false,zTree 将无法进行自动展开操作
-function zTreeBeforeDragOpen(treeId, treeNode) {
- return false;
-};
-var setting = {
- edit: {
- enable: true
- },
- callback: {
- beforeDragOpen: zTreeBeforeDragOpen
- }
-};
-......
-用于捕获节点拖拽操作结束之前的事件回调函数,并且根据返回值确定是否允许此拖拽操作
-默认值:null
-如未拖拽到有效位置,则不触发此回调函数,直接将节点恢复原位置
-目标节点 targetNode 所在 zTree 的 treeId,便于用户操控
-被拖拽的节点 JSON 数据集合
-无论拖拽操作为 复制 还是 移动,treeNodes 都是当前被拖拽节点的数据集合。
-treeNodes 被拖拽放开的目标节点 JSON 数据对象。
-如果拖拽成为根节点,则 targetNode = null
-指定移动到目标节点的相对位置
-"inner":成为子节点,"prev":成为同级前一个节点,"next":成为同级后一个节点
-拖拽节点操作是 复制 或 移动
-true:复制;false:移动
-返回值是 true / false
-如果返回 false,zTree 将恢复被拖拽的节点,也无法触发 onDrop 事件回调函数
-function zTreeBeforeDrop(treeId, treeNodes, targetNode, moveType) {
- return !(targetNode == null || (moveType != "inner" && !targetNode.parentTId));
-};
-var setting = {
- edit: {
- enable: true
- },
- callback: {
- beforeDrop: zTreeBeforeDrop
- }
-};
-......
-用于捕获节点编辑按钮的 click 事件,并且根据返回值确定是否允许进入名称编辑状态
-此事件回调函数最主要是用于捕获编辑按钮的点击事件,然后触发自定义的编辑界面操作。
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-将要进入编辑名称状态的节点 JSON 数据对象
-返回值是 true / false
-如果返回 false,节点将无法进入 zTree 默认的编辑名称状态
-function zTreeBeforeEditName(treeId, treeNode) {
- return !treeNode.isParent;
-}
-var setting = {
- edit: {
- enable: true
- },
- callback: {
- beforeEditName: zTreeBeforeEditName
- }
-};
-......
-用于捕获父节点展开之前的事件回调函数,并且根据返回值确定是否允许展开操作
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-要展开的父节点 JSON 数据对象
-返回值是 true / false
-如果返回 false,zTree 将不会展开节点,也无法触发 onExpand 事件回调函数
-function zTreeBeforeExpand(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeExpand: zTreeBeforeExpand
- }
-};
-......
-用于捕获 zTree 上鼠标按键按下之前的事件回调函数,并且根据返回值确定触发 onMouseDown 事件回调函数
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-鼠标按键按下时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-返回值是 true / false
-如果返回 false,将仅仅无法触发 onMouseDown 事件回调函数,对其他操作无任何影响
-function zTreeBeforeMouseDown(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeMouseDown: zTreeBeforeMouseDown
- }
-};
-......
-用于捕获 zTree 上鼠标按键松开之前的事件回调函数,并且根据返回值确定触发 onMouseUp 事件回调函数
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-鼠标按键松开时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-返回值是 true / false
-如果返回 false,将仅仅无法触发 onMouseUp 事件回调函数,对其他操作无任何影响
-function zTreeBeforeMouseUp(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeMouseUp: zTreeBeforeMouseUp
- }
-};
-......
-用于捕获节点被删除之前的事件回调函数,并且根据返回值确定是否允许删除操作
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-将要删除的节点 JSON 数据对象
-返回值是 true / false
-如果返回 false,zTree 将不删除节点,也无法触发 onRemove 事件回调函数
-function zTreeBeforeRemove(treeId, treeNode) {
- return false;
-}
-var setting = {
- edit: {
- enable: true
- },
- callback: {
- beforeRemove: zTreeBeforeRemove
- }
-};
-......
-用于捕获节点编辑名称结束(Input 失去焦点 或 按下 Enter 键)之后,更新节点名称数据之前的事件回调函数,并且根据返回值确定是否允许更改名称的操作
-节点进入编辑名称状态后,按 ESC 键可以放弃当前修改,恢复原名称,取消编辑名称状态
-从 v3.5.13 开始,取消编辑状态也会触发此回调,根据 isCancel 参数判断
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-将要更改名称的节点 JSON 数据对象
-修改后的新名称
-是否取消操作 (v3.5.13+)
-isCancel = true 表示取消编辑操作(按下 ESC 或 使用 cancelEditName 方法)
-isCancel = false 表示确认修改操作
-返回值是 true / false
-如果返回 false,zTree 将保持名称编辑状态,无法触发 onRename 事件回调函数,并且会导致屏蔽其它事件,直到修改名称使得 beforeRename 返回 true
-如果返回 false,不会让 input 输入框获取焦点,避免由于警告信息而导致反复触发 beforeRename。 请在关闭提示警告信息后,利用 editName 方法让 input 重新获取焦点。
-function zTreeBeforeRename(treeId, treeNode, newName, isCancel) {
- return newName.length > 5;
-}
-var setting = {
- edit: {
- enable: true
- },
- callback: {
- beforeRename: zTreeBeforeRename
- }
-};
-......
-用于捕获 zTree 上鼠标右键点击之前的事件回调函数,并且根据返回值确定触发 onRightClick 事件回调函数
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-鼠标右键点击时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-返回值是 true / false
-如果返回 false,将仅仅无法触发 onRightClick 事件回调函数,对其他操作无任何影响
-function zTreeBeforeRightClick(treeId, treeNode) {
- return false;
-};
-var setting = {
- callback: {
- beforeRightClick: zTreeBeforeRightClick
- }
-};
-......
-用于捕获异步加载出现异常错误的事件回调函数
-如果设置了 setting.callback.beforeAsync 方法,且返回 false,将无法触发 onAsyncSuccess / onAsyncError 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-进行异步加载的父节点 JSON 数据对象
-针对根进行异步加载时,treeNode = null
-标准 XMLHttpRequest 对象,请参考 JQuery API 文档。
-请求状态:success,error,请参考 JQuery API 文档。
-errorThrown 只有当异常发生时才会被传递,请参考 JQuery API 文档。
-function zTreeOnAsyncError(event, treeId, treeNode, XMLHttpRequest, textStatus, errorThrown) {
- alert(XMLHttpRequest);
-};
-var setting = {
- callback: {
- onAsyncError: zTreeOnAsyncError
- }
-};
-......
-用于捕获异步加载正常结束的事件回调函数
-如果设置了 setting.callback.beforeAsync 方法,且返回 false,将无法触发 onAsyncSuccess / onAsyncError 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-进行异步加载的父节点 JSON 数据对象
-针对根进行异步加载时,treeNode = null
-异步获取的节点数据字符串,主要便于用户调试使用。
-实际数据类型会受 setting.async.dataType 的设置影响,请参考 JQuery API 文档。
-function zTreeOnAsyncSuccess(event, treeId, treeNode, msg) {
- alert(msg);
-};
-var setting = {
- callback: {
- onAsyncSuccess: zTreeOnAsyncSuccess
- }
-};
-......
-用于捕获 checkbox / radio 被勾选 或 取消勾选的事件回调函数
-如果设置了 setting.callback.beforeCheck 方法,且返回 false,将无法触发 onCheck 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-被勾选 或 取消勾选的节点 JSON 数据对象
-function zTreeOnCheck(event, treeId, treeNode) {
- alert(treeNode.tId + ", " + treeNode.name + "," + treeNode.checked);
-};
-var setting = {
- callback: {
- onCheck: zTreeOnCheck
- }
-};
-......
-用于捕获节点被点击的事件回调函数
-如果设置了 setting.callback.beforeClick 方法,且返回 false,将无法触发 onClick 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-被点击的节点 JSON 数据对象
-节点被点击后的选中操作类型,详细看下表
-clickFlag | selectedMulti | autoCancelSelected && event.ctrlKey / metaKey | isSelected | 选中操作 |
1 | true | false | false | 普通选中 |
1 | true | false | true | 普通选中 |
2 | true | true | false | 追加选中 |
0 | true | true | true | 取消选中 |
1 | false | false | false | 普通选中 |
1 | false | false | true | 普通选中 |
1 | false | true | false | 普通选中 |
0 | false | true | true | 取消选中 |
function zTreeOnClick(event, treeId, treeNode) {
- alert(treeNode.tId + ", " + treeNode.name);
-};
-var setting = {
- callback: {
- onClick: zTreeOnClick
- }
-};
-......
-用于捕获节点被折叠的事件回调函数
-如果设置了 setting.callback.beforeCollapse 方法,且返回 false,将无法触发 onCollapse 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-被折叠的节点 JSON 数据对象
-function zTreeOnCollapse(event, treeId, treeNode) {
- alert(treeNode.tId + ", " + treeNode.name);
-};
-var setting = {
- callback: {
- onCollapse: zTreeOnCollapse
- }
-};
-......
-用于捕获 zTree 上鼠标双击之后的事件回调函数
-如果设置了 setting.callback.beforeDblClick 方法,且返回 false,将无法触发 onDblClick 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-鼠标双击时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-function zTreeOnDblClick(event, treeId, treeNode) {
- alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
-};
-var setting = {
- callback: {
- onDblClick: zTreeOnDblClick
- }
-};
-......
-用于捕获节点被拖拽的事件回调函数
-如果设置了 setting.callback.beforeDrag 方法,且返回 false,将无法触发 onDragMove 和 onDrag 事件回调函数。
-默认值:null
-标准的 js event 对象
-被拖拽的节点 treeNodes 所在 zTree 的 treeId,便于用户操控
-要被拖拽的节点 JSON 数据集合
-function zTreeOnDrag(event, treeId, treeNodes) {
- alert(treeNodes.length);
-};
-var setting = {
- callback: {
- onDrag: zTreeOnDrag
- }
-};
-......
-用于捕获节点被拖拽过程中移动的事件回调函数
-主要用于捕获 zTree 节点拖拽到的 DOM,从而操作对应的 DOM。
-默认值:null
-标准的 js event 对象
-被拖拽的节点 treeNodes 所在 zTree 的 treeId,便于用户操控
-要被拖拽的节点 JSON 数据集合
-function zTreeOnDragMove(event, treeId, treeNodes) {
- console.log(event.target);
-};
-var setting = {
- callback: {
- onDragMove: zTreeOnDragMove
- }
-};
-......
-用于捕获节点拖拽操作结束的事件回调函数
-如果设置了 setting.callback.beforeDrop 方法,且返回 false,将无法触发 onDrop 事件回调函数。
-默认值:null
-标准的 js event 对象
-目标节点 targetNode 所在 zTree 的 treeId,便于用户操控
-被拖拽的节点 JSON 数据集合
-如果拖拽操作为 移动,treeNodes 是当前被拖拽节点的数据集合。
-如果拖拽操作为 复制,treeNodes 是复制后 clone 得到的新节点数据。
-成为 treeNodes 拖拽结束的目标节点 JSON 数据对象。
-如果拖拽成为根节点,则 targetNode = null
-指定移动到目标节点的相对位置
-"inner":成为子节点,"prev":成为同级前一个节点,"next":成为同级后一个节点
-如果 moveType = null,表明拖拽无效
-拖拽节点操作是 复制 或 移动
-true:复制;false:移动
-function zTreeOnDrop(event, treeId, treeNodes, targetNode, moveType) {
- alert(treeNodes.length + "," + (targetNode ? (targetNode.tId + ", " + targetNode.name) : "isRoot" ));
-};
-var setting = {
- callback: {
- onDrop: zTreeOnDrop
- }
-};
-......
-用于捕获节点被展开的事件回调函数
-如果设置了 setting.callback.beforeExpand 方法,且返回 false,将无法触发 onExpand 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-被展开的节点 JSON 数据对象
-function zTreeOnExpand(event, treeId, treeNode) {
- alert(treeNode.tId + ", " + treeNode.name);
-};
-var setting = {
- callback: {
- onExpand: zTreeOnExpand
- }
-};
-......
-用于捕获 zTree 上鼠标按键按下后的事件回调函数
-如果设置了 setting.callback.beforeMouseDown 方法,且返回 false,将无法触发 onMouseDown 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-鼠标按键按下时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-function zTreeOnMouseDown(event, treeId, treeNode) {
- alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
-};
-var setting = {
- callback: {
- onMouseDown: zTreeOnMouseDown
- }
-};
-......
-用于捕获 zTree 上鼠标按键松开后的事件回调函数
-如果设置了 setting.callback.beforeMouseUp 方法,且返回 false,将无法触发 onMouseUp 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-鼠标按键松开时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-function zTreeOnMouseUp(event, treeId, treeNode) {
- alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
-};
-var setting = {
- callback: {
- onMouseUp: zTreeOnMouseUp
- }
-};
-......
-用于捕获节点生成 DOM 后的事件回调函数
-v3.x 采用了延迟加载技术,因此对于父节点未展开的子节点来说,初始化后是不会触发此回调函数,直到其父节点被展开
-大数据量的节点加载请注意:不设置 onNodeCreated,可以提升一部分初始化性能
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-生成 DOM 完毕的节点的 JSON 数据对象
-function zTreeOnNodeCreated(event, treeId, treeNode) {
- alert(treeNode.tId + ", " + treeNode.name);
-};
-var setting = {
- callback: {
- onNodeCreated: zTreeOnNodeCreated
- }
-};
-......
-用于捕获删除节点之后的事件回调函数。
-如果用户设置了 beforeRemove 回调函数,并返回 false,将无法触发 onRemove 事件回调函数。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-将要删除的节点 JSON 数据对象
-function zTreeOnRemove(event, treeId, treeNode) {
- alert(treeNode.tId + ", " + treeNode.name);
-}
-var setting = {
- callback: {
- onRemove: zTreeOnRemove
- }
-};
-......
-用于捕获节点编辑名称结束之后的事件回调函数。
-1、节点进入编辑名称状态,并且修改节点名称后触发此回调函数。如果用户设置了 beforeRename 回调函数,并返回 false,将无法触发 onRename 事件回调函数。
-2、如果通过直接修改 treeNode 的数据,并且利用 updateNode 方法更新,是不会触发此回调函数的。
-3、从 v3.5.13 开始,取消编辑状态也会触发此回调,根据 isCancel 参数判断
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-被修改名称的节点 JSON 数据对象
-是否取消操作 (v3.5.13+)
-isCancel = true 表示取消编辑操作(按下 ESC 或 使用 cancelEditName 方法)
-isCancel = false 表示确认修改操作
-function zTreeOnRename(event, treeId, treeNode, isCancel) {
- alert(treeNode.tId + ", " + treeNode.name);
-}
-var setting = {
- callback: {
- onRename: zTreeOnRename
- }
-};
-......
-用于捕获 zTree 上鼠标右键点击之后的事件回调函数
-1、如果设置了 setting.callback.beforeRightClick 方法,且返回 false,将无法触发 onRightClick 事件回调函数。
-2、只要将 function 的引用赋给 onRightClick 属性,则右键点击 zTree 时,将屏蔽浏览器的右键菜单。
-默认值:null
-标准的 js event 对象
-对应 zTree 的 treeId,便于用户操控
-鼠标右键点击时所在节点的 JSON 数据对象
-如果不在节点上,则返回 null
-function zTreeOnRightClick(event, treeId, treeNode) {
- alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
-};
-var setting = {
- callback: {
- onRightClick: zTreeOnRightClick
- }
-};
-......
-设置自动关联勾选时是否触发 beforeCheck / onCheck 事件回调函数。[setting.check.enable = true 且 setting.check.chkStyle = "checkbox" 时生效]
-1、如果设置 setting.check.chkboxType = { "Y": "", "N": "" },将不会有任何自动关联勾选的操作。
-2、如果开启触发,对于节点较多的树将会影响性能,因为所有被联动勾选的操作都会触发事件回调函数,请根据需要决定是否使用此功能。
-默认值: false
-true / false 分别表示 触发 / 不触发 事件回调函数
-var setting = {
- check: {
- enable: true,
- autoCheckTrigger: true
- }
-};
-......
-当父节点设置 chkDisabled = true 时,设置子节点是否自动继承 chkDisabled = true 。[setting.check.enable = true 时生效]
-1、只使用于初始化节点时,便于批量操作。 对于已存在的节点请利用 setChkDisabled 方法单个节点设置。
-默认值: false
-true 表示 新加入子节点时,自动继承父节点 chkDisabled = true 的属性。
-false 表示 新加入子节点时,不继承父节点 chkDisabled 的属性。
-var setting = {
- check: {
- enable: true,
- chkDisabledInherit: true
- }
-};
-......
-勾选框类型(checkbox 或 radio)[setting.check.enable = true 时生效]
-默认值:"checkbox"
-chkStyle = "checkbox" 时,显示 checkbox 选择框,setting.check.chkboxType 属性有效。
-
chkStyle = "radio" 时,显示 radio 选择框, setting.check.radioType 属性有效。
请注意大小写,不要改变
-未勾选;如果是父节点,则无子节点被勾选。鼠标移到该节点上显示为:
-未勾选;(只有父节点存在此状态)存在被勾选的子节点。鼠标移到该节点上显示为:
-被勾选;如果是父节点,则全部子节点都被勾选。鼠标移到该节点上显示为:
-被勾选;(只有父节点存在此状态)且部分或无子节点被勾选。鼠标移到该节点上显示为:
-未勾选;如果是父节点,则没有子节点被勾选。鼠标移到该节点上显示为:
-未勾选;(只有父节点存在此状态)且存在被勾选的子节点。鼠标移到该节点上显示为:
-被勾选;如果是父节点,则没有子节点被勾选。鼠标移到该节点上显示为:
-被勾选;(只有父节点存在此状态)且存在被勾选的子节点。鼠标移到该节点上显示为:
-var setting = {
- check: {
- enable: true,
- chkStyle: "radio"
- }
-};
-......
-勾选 checkbox 对于父子节点的关联关系。[setting.check.enable = true 且 setting.check.chkStyle = "checkbox" 时生效]
-默认值:{ "Y": "ps", "N": "ps" }
-Y 属性定义 checkbox 被勾选后的情况;
-
N 属性定义 checkbox 取消勾选后的情况;
-
"p" 表示操作会影响父级节点;
-
"s" 表示操作会影响子级节点。
请注意大小写,不要改变
-var setting = {
- check: {
- enable: true,
- chkStyle: "checkbox",
- chkboxType: { "Y": "p", "N": "s" }
- }
-};
-......
-设置 zTree 的节点上是否显示 checkbox / radio
-默认值: false
-true / false 分别表示 显示 / 不显示 复选框或单选框
-var setting = {
- check: {
- enable: true
- }
-};
-......
-当父节点设置 nocheck = true 时,设置子节点是否自动继承 nocheck = true 。[setting.check.enable = true 时生效]
-1、只使用于初始化节点时,便于批量操作。 对于已存在的节点请利用 updateNode 方法单个节点设置。
-默认值: false
-true 表示 新加入子节点时,自动继承父节点 nocheck = true 的属性。
-false 表示 新加入子节点时,不继承父节点 nocheck 的属性。
-var setting = {
- check: {
- enable: true,
- nocheckInherit: true
- }
-};
-......
-radio 的分组范围。[setting.check.enable = true 且 setting.check.chkStyle = "radio" 时生效]
-默认值:"level"
-radioType = "level" 时,在每一级节点范围内当做一个分组。
-
radioType = "all" 时,在整棵树范围内当做一个分组。
请注意大小写,不要改变
-var setting = {
- check: {
- enable: true,
- chkStyle: "radio",
- radioType: "all"
- }
-};
-......
-zTree 的节点叶子节点属性锁,是否始终保持 isParent = false
-默认值:false
-true / false 分别表示 锁定 / 不锁定 叶子节点属性
-如果设置为 true,则所有 isParent = false 的节点,都无法添加子节点。
-var setting = {
- data: {
- keep: {
- leaf: true
- }
- }
-};
-......
-zTree 的节点父节点属性锁,是否始终保持 isParent = true
-默认值:false
-true / false 分别表示 锁定 / 不锁定 父节点属性
-如果设置为 true,则所有 isParent = true 的节点,即使该节点的子节点被全部删除或移走,依旧保持父节点状态。
-var setting = {
- data: {
- keep: {
- parent: true
- }
- }
-};
-......
-zTree 节点数据中保存 check 状态的属性名称。
-默认值:"checked"
-请勿与 zTree 节点数据的其他参数冲突,例如:checkedOld
-var setting = {
- data: {
- key: {
- checked: "isChecked"
- }
- }
-};
-......
-zTree 节点数据中保存子节点数据的属性名称。
-默认值:"children"
-var setting = {
- data: {
- key: {
- children: "nodes"
- }
- }
-};
-......
-zTree 节点数据保存节点名称的属性名称。
-默认值:"name"
-var setting = {
- data: {
- key: {
- name: "ename"
- }
- }
-};
-......
-zTree 节点数据保存节点提示信息的属性名称。[setting.view.showTitle = true 时生效]
-如果设置为 "" ,则自动与 setting.data.key.name 保持一致,避免用户反复设置
-默认值:""
-var setting = {
- data: {
- key: {
- title: "fullName"
- }
- }
-};
-......
-zTree 节点数据保存节点链接的目标 URL 的属性名称。
-特殊用途:当后台数据只能生成 url 属性,又不想实现点击节点跳转的功能时,可以直接修改此属性为其他不存在的属性名称
-默认值:"url"
-var setting = {
- data: {
- key: {
- url: "xUrl"
- }
- }
-};
-......
-确定 zTree 初始化时的节点数据、异步加载时的节点数据、或 addNodes 方法中输入的 newNodes 数据是否采用简单数据模式 (Array)
-不需要用户再把数据库中取出的 List 强行转换为复杂的 JSON 嵌套格式
-默认值:false
-true / false 分别表示 使用 / 不使用 简单数据模式
-如果设置为 true,请务必设置 setting.data.simpleData 内的其他参数: idKey / pIdKey / rootPId,并且让数据满足父子关系。
-var setting = {
- data: {
- simpleData: {
- enable: true,
- idKey: "id",
- pIdKey: "pId",
- rootPId: 0,
- }
- }
-};
-var treeNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"}
-];
-......
-节点数据中保存唯一标识的属性名称。[setting.data.simpleData.enable = true 时生效]
-默认值:"id"
-var setting = {
- data: {
- simpleData: {
- enable: true,
- idKey: "id",
- pIdKey: "pId",
- rootPId: 0,
- }
- }
-};
-var treeNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"}
-];
-......
-节点数据中保存其父节点唯一标识的属性名称。[setting.data.simpleData.enable = true 时生效]
-默认值:"pId"
-var setting = {
- data: {
- simpleData: {
- enable: true,
- idKey: "id",
- pIdKey: "pId",
- rootPId: 0
- }
- }
-};
-var treeNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"}
-];
-......
-用于修正根节点父节点数据,即 pIdKey 指定的属性值。[setting.data.simpleData.enable = true 时生效]
-默认值:null
-var setting = {
- data: {
- simpleData: {
- enable: true,
- idKey: "id",
- pIdKey: "pId",
- rootPId: 0
- }
- }
-};
-var treeNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"}
-];
-......
-拖拽时父节点自动展开是否触发 onExpand 事件回调函数。[setting.edit.enable = true 时生效]
-默认值:false
-true / false 分别表示 触发 / 不触发 onExpand 事件回调函数。
-var setting = {
- edit: {
- enable: true,
- drag: {
- autoExpandTrigger: true
- }
- }
-};
-......
-拖拽时父节点自动展开的延时间隔。 (单位:ms)[setting.edit.enable = true 时生效]
-默认值:500
-请根据自己的需求适当调整此值
-var setting = {
- edit: {
- enable: true,
- drag: {
- autoOpenTime: 0
- }
- }
-};
-......
-拖拽节点成为根节点时的 Tree 内边界范围 (单位:px)。[setting.edit.enable = true 时生效]
-默认值:10
-请根据自己的需求适当调整此值
-var setting = {
- edit: {
- enable: true,
- drag: {
- borderMax: 20
- }
- }
-};
-......
-拖拽节点成为根节点时的 Tree 外边界范围 (单位:px)。[setting.edit.enable = true 时生效]
-默认值:-5
-请根据自己的需求适当调整此值
-var setting = {
- edit: {
- enable: true,
- drag: {
- borderMin: -10
- }
- }
-};
-......
-拖拽到目标节点时,设置是否允许成为目标节点的子节点。[setting.edit.enable = true 时生效]
-拖拽目标是 根 的时候,不触发 prev 和 next,只会触发 inner
-此功能主要作用是对拖拽进行适当限制(辅助箭头),需要结合 prev、next 一起使用,才能实现完整功能。
-默认值:true
-true / false 分别表示 允许 / 不允许 成为目标节点的子节点
-对应 zTree 的 treeId,便于用户操控(多棵树拖拽时,是目标节点所在树的 treeId)
-被拖拽的节点 JSON 数据集合
-拖拽时的目标节点 JSON 数据对象
-如果拖拽的节点要成为根节点,则 targetNode = null
-返回值同 Boolean 格式的数据
-var setting = {
- edit: {
- enable: true,
- drag: {
- prev: true,
- next: true,
- inner: false
- }
- }
-};
-......
- function canInner(treeId, nodes, targetNode) {
- return !(targetNode && targetNode.level === 0);
-}
-var setting = {
- edit: {
- enable: true,
- drag: {
- prev: true,
- next: true,
- inner: canInner
- }
- }
-};
-......
-拖拽时, 设置是否允许复制节点。[setting.edit.enable = true 时生效]
-默认值:true
-1、isCopy = true; isMove = true 时,拖拽节点按下 Ctrl 或 Cmd 键表示 copy; 否则为 move
-2、isCopy = true; isMove = false 时,所有拖拽操作都是 copy
-3、isCopy = false; isMove = true 时,所有拖拽操作都是 move
-4、isCopy = false; isMove = false 时,禁止拖拽操作
-var setting = {
- edit: {
- enable: true,
- drag: {
- isCopy: true,
- isMove: false
- }
- }
-};
-......
-拖拽时, 设置是否允许移动节点。[setting.edit.enable = true 时生效]
-默认值:true
-1、isCopy = true; isMove = true 时,拖拽节点按下 Ctrl 或 Cmd 键表示 copy; 否则为 move
-2、isCopy = true; isMove = false 时,所有拖拽操作都是 copy
-3、isCopy = false; isMove = true 时,所有拖拽操作都是 move
-4、isCopy = false; isMove = false 时,禁止拖拽操作
-var setting = {
- edit: {
- enable: true,
- drag: {
- isCopy: false,
- isMove: true
- }
- }
-};
-......
-拖拽多个兄弟节点时,浮动图层中显示的最大节点数。 多余的节点用...代替。[setting.edit.enable = true 时生效]
-默认值:5
-请根据自己的需求适当调整此值
-var setting = {
- edit: {
- enable: true,
- drag: {
- maxShowNodeNum: 10
- }
- }
-};
-......
-判定是否拖拽操作的最小位移值 (单位:px)。[setting.edit.enable = true 时生效]
-根据自己的需求可适当调整此值,如果太小容易导致点击鼠标时误操作进行拖拽
-默认值:5
-var setting = {
- edit: {
- enable: true,
- drag: {
- minMoveSize: 10
- }
- }
-};
-......
-拖拽到目标节点时,设置是否允许移动到目标节点后面的操作。[setting.edit.enable = true 时生效]
-拖拽目标是 根 的时候,不触发 prev 和 next,只会触发 inner
-此功能主要作用是对拖拽进行适当限制(辅助箭头),需要结合 prev、inner 一起使用,才能实现完整功能。
-默认值:true
-true / false 分别表示 允许 / 不允许 移动到目标节点后面
-对应 zTree 的 treeId,便于用户操控(多棵树拖拽时,是目标节点所在树的 treeId)
-被拖拽的节点 JSON 数据集合
-拖拽时的目标节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- edit: {
- enable: true,
- drag: {
- prev: true,
- next: false,
- inner: true
- }
- }
-};
-......
- function canNext(treeId, nodes, targetNode) {
- return !targetNode.isParent;
-}
-var setting = {
- edit: {
- enable: true,
- drag: {
- prev: true,
- next: canNext,
- inner: true
- }
- }
-};
-......
-拖拽到目标节点时,设置是否允许移动到目标节点前面的操作。[setting.edit.enable = true 时生效]
-拖拽目标是 根 的时候,不触发 prev 和 next,只会触发 inner
-此功能主要作用是对拖拽进行适当限制(辅助箭头),需要结合 next、inner 一起使用,才能实现完整功能。
-默认值:true
-true / false 分别表示 允许 / 不允许 移动到目标节点前面
-对应 zTree 的 treeId,便于用户操控(多棵树拖拽时,是目标节点所在树的 treeId)
-被拖拽的节点 JSON 数据集合
-拖拽时的目标节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- edit: {
- enable: true,
- drag: {
- prev: false,
- next: true,
- inner: true
- }
- }
-};
-......
- function canPrev(treeId, nodes, targetNode) {
- return !targetNode.isParent;
-}
-var setting = {
- edit: {
- enable: true,
- drag: {
- prev: canPrev,
- next: true,
- inner: true
- }
- }
-};
-......
-节点编辑名称 input 初次显示时,设置 txt 内容是否为全选状态。 [setting.edit.enable = true 时生效]
-默认值: false
-true 表示 全选状态
-false 表示 不是全选状态,光标默认在最后
-var setting = {
- edit: {
- enable: true,
- editNameSelectAll: true
- }
-};
-......
-设置 zTree 是否处于编辑状态
-请在初始化之前设置,初始化后需要改变编辑状态请使用 zTreeObj.setEditable() 方法
-默认值: false
-true / false 分别表示 可以 / 不可以 编辑
-1、点击节点时,不会打开 node.url 指定的 URL。
-
2、全面支持 编辑 与 异步加载 状态共存。
-
3、可以对节点进行拖拽,且支持多棵树之间进行拖拽。
-
4、支持拖拽时 复制/移动 节点。(参考: setting.edit.drag.isCopy / setting.edit.drag.isMove)
-
5、可以通过编辑按钮修改 name 属性。
-
6、可以通过删除按钮删除节点。
-
-
请注意大小写,不要改变
-var setting = {
- edit: {
- enable: true
- }
-};
-......
-删除按钮的 Title 辅助信息。[setting.edit.enable = true & setting.edit.showRemoveBtn = true 时生效]
-默认值:"remove"
-鼠标移动到 删除按钮 上时,浏览器自动弹出的辅助信息内容,可根据用户需要自行修改
-对应 zTree 的 treeId,便于用户操控
-需要设置删除按钮 Title 信息的节点 JSON 数据对象
-返回值同 String 格式的数据
-var setting = {
- edit: {
- enable: true,
- showRemoveBtn: true,
- removeTitle: "删除节点"
- }
-};
-......
- function setRemoveTitle(treeId, treeNode) {
- return treeNode.isParent ? "删除父节点":"删除叶子节点";
-}
-var setting = {
- edit: {
- enable: true,
- showRemoveBtn: true,
- removeTitle: setRemoveTitle
- }
-};
-......
-编辑名称按钮的 Title 辅助信息。[setting.edit.enable = true & setting.edit.showRenameBtn = true 时生效]
-默认值:"rename"
-设置鼠标移动到 编辑名称按钮 上时,浏览器自动弹出的辅助信息内容,可根据用户需要自行修改
-对应 zTree 的 treeId,便于用户操控
-需要设置编辑名称按钮 Title 信息的节点 JSON 数据对象
-返回值同 String 格式的数据
-var setting = {
- edit: {
- enable: true,
- showRenameBtn: true,
- renameTitle: "编辑节点名称"
- }
-};
-......
- function setRenameTitle(treeId, treeNode) {
- return treeNode.isParent ? "编辑父节点名称":"编辑叶子节点名称";
-}
-var setting = {
- edit: {
- enable: true,
- showRenameBtn: true,
- renameTitle: setRenameTitle
- }
-};
-......
-设置是否显示删除按钮。[setting.edit.enable = true 时生效]
-当点击某节点的删除按钮时:
-1、首先触发 setting.callback.beforeRemove 回调函数,用户可判定是否进行删除操作。
-2、如果未设置 beforeRemove 或 beforeRemove 返回 true,则删除节点并触发 setting.callback.onRemove 回调函数。
-默认值:true
-true / false 分别表示 显示 / 隐藏 删除按钮
-对应 zTree 的 treeId,便于用户操控
-需要设置是否显示删除按钮的节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- edit: {
- enable: true,
- showRemoveBtn: false
- }
-};
-......
- function setRemoveBtn(treeId, treeNode) {
- return !treeNode.isParent;
-}
-var setting = {
- edit: {
- enable: true,
- showRemoveBtn: setRemoveBtn
- }
-};
-......
-设置是否显示编辑名称按钮。[setting.edit.enable = true 时生效]
-当点击某节点的编辑名称按钮时:
-1、进入节点编辑名称状态。
-2、编辑名称完毕(Input 失去焦点 或 按下 Enter 键),会触发 setting.callback.beforeRename 回调函数,用户可根据自己的规则判定是否允许修改名称。
-3、如果 beforeRename 返回 false,则继续保持编辑名称状态,直到名称符合规则位置 (按下 ESC 键可取消编辑名称状态,恢复原名称)。
-4、如果未设置 beforeRename 或 beforeRename 返回 true,则结束节点编辑名称状态,更新节点名称,并触发 setting.callback.onRename 回调函数。
-默认值:true
-true / false 分别表示 显示 / 隐藏 编辑名称按钮
-对应 zTree 的 treeId,便于用户操控
-需要设置是否显示编辑名称按钮的节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- edit: {
- enable: true,
- showRenameBtn: false
- }
-};
-......
- function setRenameBtn(treeId, treeNode) {
- return !treeNode.isParent;
-}
-var setting = {
- edit: {
- enable: true,
- showRenameBtn: setRenameBtn
- }
-};
-......
-zTree 的唯一标识,初始化后,等于 用户定义的 zTree 容器的 id 属性值。
-请勿进行初始化 或 修改,属于内部参数。
-zTree 容器的 jQuery 对象,主要功能:便于操作。
-请勿进行初始化 或 修改,属于内部参数。
-用于在节点上固定显示用户自定义控件
-1. 大数据量的节点加载请注意:在 addDiyDom 中针对每个节点 查找 DOM 对象并且添加新 DOM 控件,肯定会影响初始化性能;如果不是必须使用,建议不使用此功能
-2. 属于高级应用,使用时请确保对 zTree 比较了解。
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-需要显示自定义控件的节点 JSON 数据对象
-var setting = {
- view: {
- addDiyDom: addDiyDom
- }
-};
-function addDiyDom(treeId, treeNode) {
- var aObj = $("#" + treeNode.tId + "_a");
- if ($("#diyBtn_"+treeNode.id).length>0) return;
- var editStr = "<span id='diyBtn_space_" +treeNode.id+ "' > </span>"
- + "<button type='button' class='diyBtn1' id='diyBtn_" + treeNode.id
- + "' title='"+treeNode.name+"' onfocus='this.blur();'></button>";
- aObj.append(editStr);
- var btn = $("#diyBtn_"+treeNode.id);
- if (btn) btn.bind("click", function(){alert("diy Button for " + treeNode.name);});
-};
-......
-用于当鼠标移动到节点上时,显示用户自定义控件,显示隐藏状态同 zTree 内部的编辑、删除按钮
-请务必与 setting.view.removeHoverDom 同时使用;属于高级应用,使用时请确保对 zTree 比较了解。
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-需要显示自定义控件的节点 JSON 数据对象
-var setting = {
- view: {
- addHoverDom: addHoverDom,
- removeHoverDom: removeHoverDom,
- ......
- }
-};
-function addHoverDom(treeId, treeNode) {
- var aObj = $("#" + treeNode.tId + "_a");
- if ($("#diyBtn_"+treeNode.id).length>0) return;
- var editStr = "<span id='diyBtn_space_" +treeNode.id+ "' > </span>"
- + "<button type='button' class='diyBtn1' id='diyBtn_" + treeNode.id
- + "' title='"+treeNode.name+"' onfocus='this.blur();'></button>";
- aObj.append(editStr);
- var btn = $("#diyBtn_"+treeNode.id);
- if (btn) btn.bind("click", function(){alert("diy Button for " + treeNode.name);});
-};
-function removeHoverDom(treeId, treeNode) {
- $("#diyBtn_"+treeNode.id).unbind().remove();
- $("#diyBtn_space_" +treeNode.id).unbind().remove();
-};
-......
-点击节点时,按下 Ctrl 或 Cmd 键是否允许取消选择操作。
-如果不需要此功能,请设置为 false。
-默认值: true
-true / false 分别表示 支持 / 不支持 配合 Ctrl 或 Cmd 键进行取消节点选择的操作
-var setting = {
- view: {
- autoCancelSelected: false
- }
-};
-......
-双击节点时,是否自动展开父节点的标识
-默认值: true
-true / false 分别表示双击节点 切换 / 不切换 展开状态
-对应 zTree 的 treeId,便于用户操控
-需要设置是否双击切换展开状态的节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- view: {
- dblClickExpand: false
- }
-};
-......
- function dblClickExpand(treeId, treeNode) {
- return treeNode.level > 0;
-};
-var setting = {
- view: {
- dblClickExpand: dblClickExpand
- }
-};
-......
-zTree 节点展开、折叠时的动画速度,设置方法同 JQuery 动画效果中 speed 参数。
-IE6 下会自动关闭动画效果,以保证 zTree 的操作速度
-默认值:"fast"
-三种预定速度之一的字符串("slow", "normal", or "fast")
-设置为 "" 时,不显示动画效果
-表示动画时长的毫秒数值 (如:1000)
-var setting = {
- view: {
- expandSpeed: "slow"
- }
-};
-......
-个性化文字样式,只针对 zTree 在节点上显示的<A>对象。
-默认值:{}
-JSON 格式为 JQuery css方法中的 JSON 对象格式,例如:{color:"#ff0011", background:"blue"}
-对应 zTree 的 treeId,便于用户操控
-需要设置自定义样式的节点 JSON 数据对象
-返回值同 JSON 格式的数据,例如:{color:"#ff0011", background:"blue"}
-var setting = {
- view: {
- fontCss : {color:"red"}
- }
-};
- function setFontCss(treeId, treeNode) {
- return treeNode.level == 0 ? {color:"red"} : {};
-};
-var setting = {
- view: {
- fontCss: setFontCss
- }
-};
-设置 name 属性是否支持 HTML 脚本
-如果允许 HTML 脚本,请根据自己的需求做校验,避免出现 js 注入等安全问题。
-默认值: false
-true / false 分别表示 支持 / 不支持 HTML 脚本
-var setting = {
- view: {
- nameIsHTML: true
- }
-};
-var node = {"name":"<font color='red'>test</font>"};
-......
-用于当鼠标移出节点时,隐藏用户自定义控件,显示隐藏状态同 zTree 内部的编辑、删除按钮
-请务必与 addHoverDom 同时使用;属于高级应用,使用时请确保对 zTree 比较了解。
-默认值:null
-对应 zTree 的 treeId,便于用户操控
-需要隐藏自定义控件的节点 JSON 数据对象
-var setting = {
- view: {
- addHoverDom: addHoverDom,
- removeHoverDom: removeHoverDom,
- ......
- }
-};
-function addHoverDom(treeId, treeNode) {
- var aObj = $("#" + treeNode.tId + "_a");
- if ($("#diyBtn_"+treeNode.id).length>0) return;
- var editStr = "<span id='diyBtn_space_" +treeNode.id+ "' > </span>"
- + "<button type='button' class='diyBtn1' id='diyBtn_" + treeNode.id
- + "' title='"+treeNode.name+"' onfocus='this.blur();'></button>";
- aObj.append(editStr);
- var btn = $("#diyBtn_"+treeNode.id);
- if (btn) btn.bind("click", function(){alert("diy Button for " + treeNode.name);});
-};
-function removeHoverDom(treeId, treeNode) {
- $("#diyBtn_"+treeNode.id).unbind().remove();
- $("#diyBtn_space_" +treeNode.id).unbind().remove();
-};
-......
-设置是否允许同时选中多个节点。
-默认值: true
-true / false 分别表示 支持 / 不支持 同时选中多个节点
-1、设置为 true时,按下 Ctrl 或 Cmd 键可以选中多个节点
-2、设置为 true / false 都不影响按下 Ctrl 或 Cmd 键可以让已选中的节点取消选中状态( 取消选中状态可以参考 setting.view.autoCancelSelected )
-var setting = {
- view: {
- selectedMulti: false
- }
-};
-......
-设置 zTree 是否显示节点的图标。
-默认值:true
-true / false 分别表示 显示 / 隐藏 图标
-对应 zTree 的 treeId,便于用户操控
-需要设置是否显示图标的节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- view: {
- showIcon: false
- }
-};
-......
- function showIconForTree(treeId, treeNode) {
- return treeNode.level != 2;
-};
-var setting = {
- view: {
- showIcon: showIconForTree
- }
-};
-......
-设置 zTree 是否显示节点之间的连线。
-默认值:true
-true / false 分别表示 显示 / 不显示 连线
-var setting = {
- view: {
- showLine: false
- }
-};
-......
-设置 zTree 是否显示节点的 title 提示信息(即节点 DOM 的 title 属性)。
-请务必与 setting.data.key.title 同时使用。
-默认值:true
-true / false 分别表示 显示 / 隐藏 提示信息
-如果 setting.view.showTitle = true & setting.data.key.title = '',zTree 会自动使用 setting.data.key.name 指定的节点名称当做 title
-对应 zTree 的 treeId,便于用户操控
-需要设置是否显示提示信息的节点 JSON 数据对象
-返回值同 Boolean 格式的数据
-var setting = {
- view: {
- showTitle: false
- }
-};
-......
- function showTitleForTree(treeId, treeNode) {
- return treeNode.level != 2;
-};
-var setting = {
- view: {
- showTitle: showTitleForTree
- }
-};
-......
-设置 zTree 是否允许可以选择 zTree DOM 内的文本。
-默认值:false
-true / false 分别表示 允许 / 不允许 选择 zTree Dom 内的文本
-var setting = {
- view: {
- txtSelectedEnable: true
- }
-};
-......
-用于设置节点的子节点的 checkBox / radio 的半选状态。[setting.check.enable = true 时有效]
-v3.x 针对节点数据对象提供 treeNode.getCheckStatus() 方法获取标准的半选状态
-zTree 内部使用,请勿进行初始化 或 随意修改
-默认值:true
-规则如下:
-setting.check.checkType = "checkbox" | |||
treeNode.check_Child_State | 勾选状态说明 | ||
-1 | 不存在子节点 或 子节点全部设置为 nocheck = true | ||
0 | 无 子节点被勾选 | ||
1 | 部分 子节点被勾选 | ||
2 | 全部 子节点被勾选 |
setting.check.checkType = "radio" | |||
treeNode.check_Child_State | 勾选状态说明 | ||
-1 | 不存在子节点 或 子节点全部设置为 nocheck = true | ||
0 | 无 子节点被勾选 | ||
2 | 有 子节点被勾选 |
用于设置节点的 checkBox / radio 的 focus 状态。[setting.check.enable = true 时有效]
-zTree 内部使用,请勿进行初始化 或 随意修改
-默认值:false
-true 表示当前鼠标移动到输入框内
-false 表示当前鼠标移动到输入框外
-节点的 checkBox / radio 的 勾选状态。[setting.check.enable = true & treeNode.nocheck = false 时有效]
-1、如果不使用 checked 属性设置勾选状态,请修改 setting.data.key.checked
-2、建立 treeNode 数据时设置 treeNode.checked = true 可以让节点的输入框默认为勾选状态
-3、修改节点勾选状态,可以使用 treeObj.checkNode / checkAllNodes / updateNode 方法,具体使用哪种请根据自己的需求而定
-4、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据
-默认值:false
-true 表示节点的输入框被勾选
-false 表示节点的输入框未勾选
-var nodes = [
-{ "id":1, "name":"test1", checked:true },
-{ "id":2, "name":"test2", checked:true }
-]
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var checked = treeObj.getNodes()[0].checked;
-
-节点的 checkBox / radio 在初始化时的 勾选状态。[setting.check.enable = true & treeNode.nocheck = false 时有效]
-1、zTree 初始化节点数据时会对此属性进行赋值,因此请勿对此属性初始化
-2、如需配合 zTreeObj.getChangeCheckedNodes 方法实现特殊功能,可以根据需求在使用中自行修改 checkedOld 数据
-默认值:checked的初始化值
-true 表示节点初始化时 输入框被勾选
-false 表示节点初始化时 输入框未勾选
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var checkedOld = treeObj.getNodes()[0].checkedOld;
-
-节点的子节点数据集合。
-1、如果不使用 children 属性保存子节点数据,请修改 setting.data.key.children
-2、异步加载时,对于设置了 isParent = true 的节点,在展开时将进行异步加载
-默认值:无
-标准的 JSON 数据对象
-var nodes = [
-{ "id":1, "name":"test1",
- children: [
- { "id":3, "name":"test3"},
- { "id":4, "name":"test4"},
- { "id":5, "name":"test5"}
- ]
-},
-{ "id":2, "name":"test2" }
-]
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes()[0].children;
-
-1、设置节点的 checkbox / radio 是否禁用 [setting.check.enable = true 时有效]
-2、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据
-3、请勿对已加载的节点修改此属性,禁止 或 取消禁止 请使用 setChkDisabled() 方法
-4、初始化时,如果需要子孙节点继承父节点的 chkDisabled 属性,请设置 setting.check.chkDisabledInherit 属性
-默认值:false
-true 表示此节点的 checkbox / radio 被禁用。
-false 表示此节点的 checkbox / radio 可以使用。
-var nodes = [
- { "id":1, "name":"test1", "checked":true, "chkDisabled":true},
- { "id":2, "name":"test2", "chkDisabled":true},
- { "id":3, "name":"test3"}
-]
-最简单的 click 事件操作。相当于 onclick="..." 的内容。 如果操作较复杂,请使用 onClick 事件回调函数。
-由于 IE 对于 onclick 和 click事件共存时的处理与其他浏览器不同,所以请不要利用此参数控制是否允许跳转的操作(例如:treeNode.click = "return false;")。如有类似需求,请不要使用 url 属性设置网址,同时利用 onClick 回调函数控制跳转。
-默认值:无
-标准 javascript 语法, 例如:alert("test"); 等
-var nodes = [
- { "id":1, "name":"Google CN", "url":"http://g.cn", "click":"alert('test');"},
- ......
-]
-用于保存节点的其他自定义数据信息,不要与 zTree 使用的属性相同即可,用户可随意设定。
-var node = { "id":1, "name":"test1", "ename":"test eName"};
-用于记录节点是否处于编辑名称状态。[setting.edit.enable = true 时有效]
-zTree 内部使用,请勿进行初始化 或 随意修改
-默认值:false
-true 表示节点处于编辑名称状态
-false 表示节点未处于编辑名称状态
-获取节点 checkbox / radio 半勾选状态。[setting.check.enable = true 时有效]
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-{
- checked: true, //等同于 treeNode.checked
- half: true //规则见下表
-}
- setting.check.checkType = "checkbox" | |||
treeNode.checked | treeNode.check_Child_State | treeNode.halfCheck | half |
- | - | true | true |
true | -1 | false | false |
true | 0 | false | true |
true | 1 | false | true |
true | 2 | false | false |
false | -1 | false | false |
false | 0 | false | false |
false | 1 | false | true |
false | 2 | false | true |
setting.check.checkType = "radio" | |||
treeNode.checked | treeNode.check_Child_State | treeNode.halfCheck | half |
- | - | true | true |
true | -1 | false | false |
true | 0 | false | false |
true | 2 | false | true |
false | -1 | false | false |
false | 0 | false | false |
false | 2 | false | true |
var treeObj = $.fn.zTree.getZTreeObj("tree");
-var halfCheck = treeObj.getNodes()[0].getCheckStatus();
-
-获取与 treeNode 节点相邻的后一个节点。
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-与 treeNode 节点相邻的后一个节点。
-如果 treeNode 是最后一个节点,返回 null 。
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var node = sNodes[0].getNextNode();
-}
-
-获取 treeNode 节点的父节点。
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-treeNode 节点的父节点 JSON 数据对象。
-如果 treeNode 是根节点,返回 null 。
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var node = sNodes[0].getParentNode();
-}
-
-获取与 treeNode 节点相邻的前一个节点。
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-与 treeNode 节点相邻的前一个节点。
-如果 treeNode 是第一个节点,返回 null 。
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var node = sNodes[0].getPreNode();
-}
-
-强制节点的 checkBox / radio 的 半勾选状态。[setting.check.enable = true & treeNode.nocheck = false 时有效]
-1、强制为半勾选状态后,不再进行自动计算半勾选状态
-2、设置 treeNode.halfCheck = false 或 null 才能恢复自动计算半勾选状态
-3、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据
-默认值:false
-true 表示节点的输入框 强行设置为半勾选
-false 表示节点的输入框 根据 zTree 的规则自动计算半勾选状态
-var nodes = [
-{ "id":1, "name":"test1", isParent:true, checked:true, halfCheck:true },
-{ "id":2, "name":"test2", isParent:true, checked:false, halfCheck:true },
-{ "id":3, "name":"test3", isParent:true, checked:true },
-{ "id":4, "name":"test4", isParent:true, checked:false }
-]
-节点自定义图标的 URL 路径。
-1、父节点如果只设置 icon ,会导致展开、折叠时都使用同一个图标
-2、父节点展开、折叠使用不同的个性化图标需要同时设置 treeNode.iconOpen / treeNode.iconClose 两个属性
-3、如果想利用 className 设置个性化图标,需要设置 treeNode.iconSkin 属性
-默认值:无
-图标图片的 url 可以是相对路径也可以是绝对路径
-设置相对路径请注意页面与图片之间的关系,确保图片能够正常加载
-var nodes = [
- //父节点展开 折叠时使用相同的图标
- { name:"父节点1", icon:"/img/parent.gif"},
-
- //父节点展开 折叠时分别使用不同的图标
- { name:"父节点2", iconOpen:"/img/open.gif", iconClose:"/img/close.gif"},
-
- //叶子节点个性化图标
- { name:"叶子节点", icon:"/img/leaf.gif"}
-]
-父节点自定义折叠时图标的 URL 路径。
-1、此属性只针对父节点有效
-2、此属性必须与 iconOpen 同时使用
-3、如果想利用 className 设置个性化图标,需要设置 treeNode.iconSkin 属性
-默认值:无
-图标图片的 url 可以是相对路径也可以是绝对路径
-设置相对路径请注意页面与图片之间的关系,确保图片能够正常加载
-var nodes = [
- //父节点展开 折叠时使用相同的图标
- { name:"父节点1", icon:"/img/parent.gif"},
-
- //父节点展开 折叠时分别使用不同的图标
- { name:"父节点2", iconOpen:"/img/open.gif", iconClose:"/img/close.gif"},
-
- //叶子节点个性化图标
- { name:"叶子节点", icon:"/img/leaf.gif"}
-]
-父节点自定义展开时图标的 URL 路径。
-1、此属性只针对父节点有效
-2、此属性必须与 iconClose 同时使用
-3、如果想利用 className 设置个性化图标,需要设置 treeNode.iconSkin 属性
-默认值:无
-图标图片的 url 可以是相对路径也可以是绝对路径
-设置相对路径请注意页面与图片之间的关系,确保图片能够正常加载
-var nodes = [
- //父节点展开 折叠时使用相同的图标
- { name:"父节点1", icon:"/img/parent.gif"},
-
- //父节点展开 折叠时分别使用不同的图标
- { name:"父节点2", iconOpen:"/img/open.gif", iconClose:"/img/close.gif"},
-
- //叶子节点个性化图标
- { name:"叶子节点", icon:"/img/leaf.gif"}
-]
-节点自定义图标的 className
-1、需要修改 css,增加相应 className 的设置
-2、css 方式简单、方便,并且同时支持父节点展开、折叠状态切换图片
-3、css 建议采用图片分割渲染的方式以减少反复加载图片,并且避免图片闪动
-4、zTree v3.x 的 iconSkin 同样支持 IE6
-5、如果想直接使用 图片的Url路径 设置节点的个性化图标,需要设置 treeNode.icon / treeNode.iconOpen / treeNode.iconClose 属性
-默认值:无
-设置个性图标的 className
-css 内容:
-.ztree li span.button.diy01_ico_open, .ztree li span.button.diy01_ico_close{...}
-
-.ztree li span.button.diy02_ico_open{...}
-.ztree li span.button.diy02_ico_close{...}
-
-.ztree li span.button.diy03_ico_docu{...}
-
-js中节点数据:
-var nodes = [
- //父节点展开 折叠时使用相同的图标
- { name:"父节点1", iconSkin:"diy01"},
-
- //父节点展开 折叠时分别使用不同的图标
- { name:"父节点2", iconSkin:"diy02"},
-
- //叶子节点个性化图标
- { name:"叶子节点", iconSkin:"diy03"}
-]
-记录 treeNode 节点是否正在进行异步加载。
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-true 表示节点正在进行异步加载
-false 表示节点没有进行异步加载
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var isAjaxing = sNodes[0].isAjaxing;
-}
-
-记录 treeNode 节点是否为同级节点中的第一个节点。
-使用 exhide 扩展后,只针对显示的节点设置此属性
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-true 表示是同级节点中的第一个节点
-false 表示不是同级节点中的第一个节点
-节点被隐藏后,isFirstNode = false
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var isFirstNode = sNodes[0].isFirstNode;
-}
-
-判断 treeNode 节点是否被隐藏。
-1、初始化 zTree 时,如果节点设置 isHidden = true,会被自动隐藏
-2、请勿对已加载的节点修改此属性,隐藏 / 显示 请使用 hideNode() / hideNodes() / showNode() / showNodes() 方法
-true 表示被隐藏
-false 表示被显示
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getNodes();
-if (sNodes.length > 0) {
- var isHidden = sNodes[0].isHidden;
-}
-
-记录节点 的 hover 状态,主要用于 setting.view.addHoverDom / removeHoverDom 。
-zTree 内部使用,请勿进行初始化 或 随意修改
-默认值:false
-true 表示节点处于 hover 状态
-false 表示节点未处于 hover 状态
-记录 treeNode 节点是否为同级节点中的最后一个节点。
-使用 exhide 扩展后,只针对显示的节点设置此属性
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-true 表示是同级节点中的最后一个节点
-false 表示不是同级节点中的最后一个节点
-节点被隐藏后,isLastNode = false
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var isLastNode = sNodes[0].isLastNode;
-}
-
-记录 treeNode 节点是否为父节点。
-1、初始化节点数据时,根据 treeNode.children 属性判断,有子节点则设置为 true,否则为 false
-2、初始化节点数据时,如果设定 treeNode.isParent = true,即使无子节点数据,也会设置为父节点
-3、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据
-true 表示是父节点
-false 表示不是父节点
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var isParent = sNodes[0].isParent;
-}
-
-记录节点的层级
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-根节点 level = 0,依次递增
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var level = sNodes[0].level;
-}
-
-节点名称。
-1、如果不使用 name 属性保存节点名称,请修改 setting.data.key.name
-默认值:无
-节点显示的名称字符串,标准 String 即可,所有特殊字符都会被自动转义
-var nodes = [
- { "id":1, "name":"test1"},
- { "id":2, "name":"test2"},
- { "id":3, "name":"test3"}
-]
-1、设置节点是否隐藏 checkbox / radio [setting.check.enable = true 时有效]
-2、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据
-默认值:false
-true 表示此节点不显示 checkbox / radio,不影响勾选的关联关系,不影响父节点的半选状态。
-false 表示节点具有正常的勾选功能
-var nodes = [
- { "id":1, "name":"test1", "nocheck":true},
- { "id":2, "name":"test2"},
- { "id":3, "name":"test3"}
-]
-记录 treeNode 节点的 展开 / 折叠 状态。
-1、初始化节点数据时,如果设定 treeNode.open = true,则会直接展开此节点
-2、叶子节点 treeNode.open = false
-3、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据
-4、非异步加载模式下,无子节点的父节点设置 open=true 后,可显示为展开状态,但异步加载模式下不会生效。(v3.5.15+)
-默认值:false
-true 表示节点为 展开 状态
-false 表示节点为 折叠 状态
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var isOpen = sNodes[0].open;
-}
-
-treeNode 节点的父节点唯一标识 tId。
-1、v3.x 用 parentTId 替换了原先的 parentNode 属性,同时增加了 getParentNode 方法,以避免原先 parentNode 造成的 clone 死循环
-2、初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-zTree 内部生成的节点唯一标识,请参考 treeNode.tId 的说明
-如果 treeNode 是根节点,则 parentTId = null
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var parentTId = sNodes[0].parentTId;
-}
-
-treeNode 节点的唯一标识 tId。
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-生成规则:setting.treeId + "_" + 内部计数
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var tId = sNodes[0].tId;
-}
-
-设置点击节点后在何处打开 url。[treeNode.url 存在时有效]
-默认值:无
-同超链接 target 属性: "_blank", "_self" 或 其他指定窗口名称
-省略此属性,则默认为 "_blank"
-var nodes = [
- { "id":1, "name":"test1", "url":"http://myTest.com", "target":"_blank"},
- ......
-]
-节点链接的目标 URL
-1、编辑模式 (setting.edit.enable = true) 下此属性功能失效,如果必须使用类似功能,请利用 onClick 事件回调函数自行控制。
-2、如果需要在 onClick 事件回调函数中进行跳转控制,那么请将 URL 地址保存在其他自定义的属性内,请勿使用 url
-默认值:无
-同超链接 href 属性
-var nodes = [
- { "id":1, "name":"Google CN", "url":"http://g.cn"},
- ......
-]
-记录 treeNode 节点是否已经进行过异步加载,避免父节点反复异步加载数据。
-初始化节点数据时,由 zTree 增加此属性,请勿提前赋值
-默认值:false (无子节点的父节点); true (有子节点的父节点 & 叶子节点)
-true 表示父节点展开时不需要自动异步加载
-false 表示父节点展开时需要自动异步加载
-此参数不会对 reAsyncChildNodes 方法造成任何影响
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var sNodes = treeObj.getSelectedNodes();
-if (sNodes.length > 0) {
- var zAsync = sNodes[0].zAsync;
-}
-
-添加节点。
-v3.x 为了避免原先反复初始化造成的数据重复问题,在 初始化 和 添加节点 时内部进行 clone 操作。如果需要获取数据在 zTree 内的对象,请获取此方法的返回值。
-请通过 zTree 对象执行此方法。
-指定的父节点,如果增加根节点,请设置 parentNode 为 null 即可。
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-需要增加的节点数据 JSON 对象集合,数据只需要满足 zTree 的节点数据必需的属性即可,详细请参考“treeNode 节点数据详解”
-1、v3.x 支持单独添加一个节点,即如果只新增一个节点,不用必须包在数组中
-2、使用简单数据模式,请参考 setting.data.simpleData 内的属性说明
-设定增加节点后是否自动展开父节点。
-isSilent = true 时,不展开父节点,其他值或缺省状态都自动展开。
-返回值是 zTree 最终添加的节点数据集合
-如果 newNodes 是单个节点数据 JSON,返回值也是将其包在 Array 内
-请务必记住:返回值中的数据对象 是 newNodes 被 clone 后的,所以绝对不相等!
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var newNode = {name:"newNode1"};
-newNode = treeObj.addNodes(null, newNode);
-
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var newNodes = [{name:"newNode1"}, {name:"newNode2"}, {name:"newNode3"}];
-newNodes = treeObj.addNodes(null, newNodes);
-
-取消节点的编辑名称状态,可以恢复原名称,也可以强行赋给新的名称。
-请通过 zTree 对象执行此方法。
-重新给定的新名称。
-如果省略此参数,则恢复原名称。
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.cancelEditName();
-
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.cancelEditName("test_new_name");
-
-取消节点的选中状态。
-v3.x 支持多点同时选中,因此取消选中状态可以全部取消,也可以单独取消某个节点的选中状态。
-请通过 zTree 对象执行此方法。
-需要取消选中状态的节点。
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-如果省略此参数,则将取消全部被选中节点的选中状态。
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.cancelSelectedNode();
-
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNode();
-if (nodes.length>0) {
- treeObj.cancelSelectedNode(nodes[0]);
-}
-
-勾选 或 取消勾选 全部节点。[setting.check.enable = true 且 setting.check.chkStyle = "checkbox" 时有效]
-此方法不会触发 beforeCheck / onCheck 事件回调函数。
-请通过 zTree 对象执行此方法。
-checked = true 表示勾选全部节点
-checked = false 表示全部节点取消勾选
-不会影响 treeNode.nochecked = true 的节点。
-不会影响未加载的节点。
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.checkAllNodes(true);
-
-勾选 或 取消勾选 单个节点。[setting.check.enable = true 时有效]
-v3.x 中 checkNode() 方法可以触发 beforeCheck / onCheck 事件回调函数。便于减少冗余代码
-请通过 zTree 对象执行此方法。
-需要勾选 或 取消勾选 的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-checked = true 表示勾选节点
-checked = false 表示节点取消勾选
-省略此参数,则根据对此节点的勾选状态进行 toggle 切换
-不影响 treeNode.nochecked = true 的节点。
-checkTypeFlag = true 表示按照 setting.check.chkboxType 属性进行父子节点的勾选联动操作
-checkTypeFlag = false 表示只修改此节点勾选状态,无任何勾选联动操作
-checkTypeFlag = false 且 treeNode.checked = checked 时,不会触发回调函数,直接返回
-不影响父子节点中 treeNode.nochecked = true 的节点。
-callbackFlag = true 表示执行此方法时触发 beforeCheck & onCheck 事件回调函数
-callbackFlag = false 表示执行此方法时不触发事件回调函数
-省略此参数,等同于 false
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-for (var i=0, l=nodes.length; i < l; i++) {
- treeObj.checkNode(nodes[i], true, true);
-}
-
-复制节点。
-v3.x 复制节点时进行 clone 操作。如果需要获取数据在 zTree 内的对象,请获取此方法的返回值。
-请通过 zTree 对象执行此方法。
-要复制到的目标节点 JSON 数据
-如果复制成为根节点,请设置 targetNode 为 null 即可
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-需要被复制的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-复制到目标节点的相对位置
-"inner":成为子节点,"prev":成为同级前一个节点,"next":成为同级后一个节点
-设定复制节点后是否自动展开父节点。
-isSilent = true 时,不展开父节点,其他值或缺省状态都自动展开。
-返回值是最终加入到 zTree 内的节点数据
-请务必记住:返回值中的数据对象 是 treeNode 被 clone 后的,所以绝对不相等!
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.copyNode(nodes[0], nodes[1], "inner");
-
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.copyNode(nodes[0], nodes[1], "before");
-
-从 zTree v3.4 开始提供销毁 zTree 的方法。
-1、用此方法可以销毁 zTreeObj 代表的 zTree。
-2、销毁当前页面全部的 zTree,也可以使用 $.fn.zTree.destroy() 方法。
-3、重新使用已经被销毁的树,必须要使用 init 方法进行初始化。
-目前无任何返回值
-var zTreeObj = $.fn.zTree.getZTreeObj("treeDemo");
-zTreeObj.destroy();
-
-设置某节点进入编辑名称状态。
-1、如果需要用 js 取消编辑名称状态,请使用 cancelEditName(newName) 方法。
-2、可利用此方法让当前正编辑的节点 input 输入框获取焦点。
-3、请通过 zTree 对象执行此方法。
-指定进入编辑名称状态的节点 JSON 数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.editName(nodes[0]);
-
-展开 / 折叠 全部节点
-此方法不会触发 beforeExpand / onExpand 和 beforeCollapse / onCollapse 事件回调函数。
-请通过 zTree 对象执行此方法。
-expandFlag = true 表示 展开 全部节点
-expandFlag = false 表示 折叠 全部节点
-返回值表示最终实际操作情况
-true 表示 展开 全部节点
-false 表示 折叠 全部节点
-null 表示 不存在任何父节点
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.expandAll(true);
-
-展开 / 折叠 指定的节点
-v3.x 中执行此方法可以触发 beforeExpand / onExpand 或 beforeCollapse / onCollapse 事件回调函数。便于减少冗余代码
-请通过 zTree 对象执行此方法。
-需要 展开 / 折叠 的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-expandFlag = true 表示 展开 节点
-expandFlag = false 表示 折叠 节点
-省略此参数,则根据对此节点的展开状态进行 toggle 切换
-sonSign = true 表示 全部子孙节点 进行与 expandFlag 相同的操作
-sonSign = false 表示 只影响此节点,对于其 子孙节点无任何影响
-sonSign = false 且 treeNode.open = expandFlag 时,不会触发回调函数,直接返回
-省略此参数,等同于 false
-focus = true 表示 展开 / 折叠 操作后,通过设置焦点保证此焦点进入可视区域内
-focus = false 表示 展开 / 折叠 操作后,不设置任何焦点
-省略此参数,等同于 true
-callbackFlag = true 表示执行此方法时触发 beforeExpand / onExpand 或 beforeCollapse / onCollapse 事件回调函数
-callbackFlag = false 表示执行此方法时不触发事件回调函数
-省略此参数,等同于 false
-返回值表示最终实际操作情况
-true 表示 展开 节点
-false 表示 折叠 节点
-null 表示 不是父节点
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-if (nodes.length>0) {
- treeObj.expandNode(nodes[0], true, true, true);
-}
-
-获取输入框勾选状态被改变的节点集合(与原始数据 checkedOld 对比)。[setting.check.enable = true 时有效]
-请通过 zTree 对象执行此方法。
-返回全部勾选状态被改变的节点集合 Array
-如果需要获取每次操作后全部被改变勾选状态的节点数据,请在每次勾选操作后,遍历所有被改变勾选状态的节点数据,让其 checkedOld = checked 就可以了。
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getChangeCheckedNodes();
-
-获取输入框被勾选 或 未勾选的节点集合。[setting.check.enable = true 时有效]
-请通过 zTree 对象执行此方法。
-checked = true 表示获取 被勾选 的节点集合
-checked = false 表示获取 未勾选 的节点集合
-省略此参数,等同于 true。
-对于 treeNode.nochecked = true 的节点不进行获取。
-返回全部符合要求的节点集合 Array
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getCheckedNodes(true);
-
-根据节点数据的属性搜索,获取条件完全匹配的节点数据 JSON 对象
-请通过 zTree 对象执行此方法。
-需要精确匹配的属性名称
-需要精确匹配的属性值,可以是任何类型,只要保证与 key 指定的属性值保持一致即可
-搜索范围,指定在某个父节点下的子节点中进行搜索
-忽略此参数,表示在全部节点中搜索
-匹配精确搜索的节点数据
-1、如无结果,返回 null
-2、如有多个节点满足查询条件,只返回第一个匹配到的节点
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var node = treeObj.getNodeByParam("id", 1, null);
-
-根据 zTree 的唯一标识 tId 快速获取节点 JSON 数据对象
-通过内部的 cache 获取,不需要遍历节点。
-请通过 zTree 对象执行此方法。
-节点在 zTree 内的唯一标识 tId
-tId 对应的节点 JSON 数据对象
-如无结果,返回 null
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var node = treeObj.getNodeByTId("tree_10");
-
-获取某节点在同级节点中的序号(从0开始)
-请通过 zTree 对象执行此方法。
-需要查询顺序的节点 JSON 数据对象
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-返回值从 0 开始计数
-如果不存在该节点数据,返回 -1
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-if (nodes.length>0) {
- var index = treeObj.getNodeIndex(nodes[0]);
-}
-
-获取 zTree 的全部节点数据
-请通过 zTree 对象执行此方法。
-全部节点数据
-1、Array 仅仅是根节点的集合(默认情况子节点都处于 children 属性下);
-2、如需遍历全部节点需要利用递归,或利用 transformToArray 方法 将数据变成简单的 Array 集合
-3、对于异步加载模式下,尚未加载的子节点是无法通过此方法获取的。
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-
-根据自定义规则搜索节点数据 JSON 对象集合 或 单个节点数据
-可自定义复杂的搜索规则
-请通过 zTree 对象执行此方法。
-自定义过滤器函数 function filter(node) {...}
-filter 参数:node (节点数据 JSON)
-filter 返回值:boolean (true 表示符合搜索条件;false 表示不符合搜索条件)
-isSingle = true 表示只查找单个节点
-isSingle = false 表示查找节点集合
-忽略此参数,表示查找节点集合
-可以指定在某个父节点下的子节点中搜索
-忽略此参数,表示在全部节点中搜索
-用户自定义的数据对象,用于 filter 中进行计算
-isSingle = true 返回 第一个找到的节点数据 JSON,无结果时返回 null
-isSingle = false 返回 节点数据集合 Array(JSON),无结果时返回 [ ]
-function filter(node) {
- return (node.level == 2 && node.name.indexOf("test")>-1);
-}
-......
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var node = treeObj.getNodesByFilter(filter, true); // 仅查找一个节点
-var nodes = treeObj.getNodesByFilter(filter); // 查找节点集合
-
-根据节点数据的属性搜索,获取条件完全匹配的节点数据 JSON 对象集合
-请通过 zTree 对象执行此方法。
-需要精确匹配的属性名称
-需要精确匹配的属性值,可以是任何类型,只要保证与 key 指定的属性值保持一致即可
-可以指定在某个父节点下的子节点中搜索
-忽略此参数,表示在全部节点中搜索
-匹配精确搜索的节点数据集合
-如无结果,返回 [ ]
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodesByParam("name", "test", null);
-
-根据节点数据的属性搜索,获取条件模糊匹配的节点数据 JSON 对象集合
-请通过 zTree 对象执行此方法。
-需要模糊匹配的属性名称
-需要模糊匹配的属性值
-模糊匹配只能针对 String 类型的数据
-可以指定在某个父节点下的子节点中搜索
-忽略此参数,表示在全部节点中搜索
-匹配模糊搜索的节点数据集合
-如无结果,返回 [ ]
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodesByParamFuzzy("name", "test", null);
-
-获取 zTree 当前被选中的节点数据集合
-请通过 zTree 对象执行此方法。
-当前被选中的节点数据集合
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-
-隐藏某个节点。
-1、此功能不支持 exedit 扩展,因此不要在编辑状态时使用隐藏节点的方法。
-2、隐藏/显示节点,会影响节点的 isFirstNode 和 isLastNode 属性。
-3、请通过 zTree 对象执行此方法。
-指定被隐藏的节点 JSON 数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.hideNode(nodes[0]);
-
-隐藏一批节点。
-1、此功能不支持 exedit 扩展,因此不要在编辑状态时使用隐藏节点的方法。
-2、隐藏/显示节点,会影响节点的 isFirstNode 和 isLastNode 属性。
-3、请通过 zTree 对象执行此方法。
-指定被隐藏的节点 JSON 数据集合
-请务必保证这些节点数据对象 是 zTree 内部的数据对象
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.hideNodes(nodes[0].children);
-
-移动节点。
-请通过 zTree 对象执行此方法。
-要移动到的目标节点 JSON 数据
-如果移动成为根节点,请设置 targetNode 为 null 即可
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-需要被移动的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-指定移动到目标节点的相对位置
-"inner":成为子节点,"prev":成为同级前一个节点,"next":成为同级后一个节点
-设定移动节点后是否自动展开父节点。
-isSilent = true 时,不展开父节点,其他值或缺省状态都自动展开。
-返回值是最终被移动的节点数据,正常情况下与 treeNode 参数完全相同
-如果 返回值 为 null,说明 移动失败,主要原因有:
- 1、targetNode 是 treeNode 父节点,且 moveType = "inner"
- 2、targetNode 是 treeNode 子孙节点
-
var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.moveNode(nodes[0], nodes[1], "inner");
-
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-treeObj.moveNode(nodes[0], nodes[1], "prev");
-
-强行异步加载父节点的子节点。[setting.async.enable = true 时有效]
-已经加载过的父节点可反复使用此方法重新加载。
-请通过 zTree 对象执行此方法。
-指定需要异步加载的父节点 JSON 数据
-1、parentNode = null 时,相当于从根节点 Root 进行异步加载
-2、parentNode.isParent = false 时,不进行异步加载
-3、请务必保证此节点数据对象 是 zTree 内部的数据对象
-reloadType = "refresh" 表示清空后重新加载。
-reloadType != "refresh" 时,表示追加子节点处理。
-设定异步加载后是否自动展开父节点。
-isSilent = true 时,不展开父节点,其他值或缺省状态都自动展开。
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.reAsyncChildNodes(null, "refresh");
-
- var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-if (nodes.length>0) {
- treeObj.reAsyncChildNodes(nodes[0], "refresh");
-}
-
-刷新 zTree 。
-没有特殊必要,尽量不要使用此方法。单个节点更新请使用 updateNode 方法,异步加载模式下请使用 reAsyncChildNodes 方法。
-请通过 zTree 对象执行此方法。
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.refresh();
-
-清空某父节点的子节点。
-1、清空子节点后,父节点会自动变为叶子节点,如需要父节点保持父节点状态,请设置 setting.data.keep.parent 属性。
-2、请勿用此方法清空根节点,如果需要清空根节点,直接初始化 zTree,并且设置初始节点为 null 即可。
-3、此方法不会触发任何事件回调函数。
-请通过 zTree 对象执行此方法。
-需要清空子节点的父节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-将该父节点的子节点数据返回,如果不存在则返回 null
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-if (nodes && nodes.length>0) {
- treeObj.removeChildNodes(nodes[0]);
-}
-
-删除节点。
-v3.x 中删除节点可以触发 beforeRemove / onRemove 事件回调函数。便于减少冗余代码
-请通过 zTree 对象执行此方法。
-需要被删除的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-callbackFlag = true 表示执行此方法时触发 beforeRemove & onRemove 事件回调函数
-callbackFlag = false 表示执行此方法时不触发事件回调函数
-省略此参数,等同于 false
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-for (var i=0, l=nodes.length; i < l; i++) {
- treeObj.removeNode(nodes[i]);
-}
-
-选中指定节点
-v3.x 支持同时选中多个节点。
-请通过 zTree 对象执行此方法。
-需要被选中的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-addFlag = true 表示追加选中,会出现多点同时被选中的情况
-addFlag = false 表示单独选中,原先被选中的节点会被取消选中状态
-setting.view.selectedMulti = false 时,此参数无效,始终进行单独选中
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-if (nodes.length>0) {
- treeObj.selectNode(nodes[0]);
-}
-
-禁用 或 解禁 某个节点的 checkbox / radio [setting.check.enable = true 时有效]
-1、节点的 checkbox / radio 被禁用后,无法勾选或取消勾选,但能够影响父节点的半选状态
-2、请不要直接修改已加载节点的 treeNode.chkDisabled 属性。
-3、请通过 zTree 对象执行此方法。
-需要禁用 或 解禁 checkbox / radio 的节点数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-disabled = true 表示禁用 checkbox / radio
-disabled = false 表示解禁 checkbox / radio
-省略此参数,等同于 disabled = false
-不影响 treeNode.nochecked = true 的节点。
-inheritParent = true 表示全部父节点进行同样的操作
-inheritParent = false 表示不影响父节点
-省略此参数,等同于 inheritParent = false
-inheritChildren = true 表示全部子节点进行同样的操作
-inheritChildren = false 表示不影响子节点
-省略此参数,等同于 inheritChildren = false
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getSelectedNodes();
-for (var i=0, l=nodes.length; i < l; i++) {
- treeObj.setChkDisabled(nodes[i], true);
-}
-
-设置 zTree 进入 / 取消 编辑状态。
-对于编辑状态的各种功能需要提前设置对应 setting 中的不同属性
-请通过 zTree 对象执行此方法。
-true 表示进入 编辑状态
-false 表示取消 编辑状态
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-treeObj.setEditable(true);
-
-zTree 对象使用的 setting 配置数据,详细请参考 “setting 配置详解”中的各个属性详细说明
-v3.x 取消了原先操作 setting 的方法,让用户可以较自由的修改参数,但请注意,对于 zTree 初始化有影响的参数后期修改是不会起作用的,请对各个属性有较深入的了解以后再考虑进行修改。
-显示某个被隐藏的节点。
-1、此功能不支持 exedit 扩展,因此不要在编辑状态时使用隐藏节点的方法。
-2、隐藏/显示节点,会影响节点的 isFirstNode 和 isLastNode 属性。
-3、请通过 zTree 对象执行此方法。
-指定被显示的节点 JSON 数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var node = treeObj.getNodeByParam("isHidden", true);
-if (node) {
- treeObj.showNode(node);
-}
-
-显示一批已经被隐藏的节点。
-1、此功能不支持 exedit 扩展,因此不要在编辑状态时使用隐藏节点的方法。
-2、隐藏/显示节点,会影响节点的 isFirstNode 和 isLastNode 属性。
-3、请通过 zTree 对象执行此方法。
-指定被显示的节点 JSON 数据集合
-请务必保证这些节点数据对象 是 zTree 内部的数据对象
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodesByParam("isHidden", true);
-treeObj.showNodes(nodes);
-
-将 zTree 使用的标准 JSON 嵌套格式的数据转换为简单 Array 格式。(免去用户自行编写递归遍历全部节点的麻烦)
-请通过 zTree 对象执行此方法。
-需要被转换的 zTree 节点数据对象集合 或 某个单独节点的数据对象
-转换后的简单 Array 数据格式
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.transformToArray(treeObj.getNodes());
-
-将简单 Array 格式数据转换为 zTree 使用的标准 JSON 嵌套数据格式。
-使用此方法,请务必设置节点唯一标识属性名称 setting.data.simpleData.idKey 和 父节点唯一标识属性名称 setting.data.simpleData.pIdKey,并且让数据满足父子关系。
-请通过 zTree 对象执行此方法。
-需要被转换的简单 Array 格式数据 或 某个单独的数据对象
-zTree 使用的标准数据,子节点都存在于父节点数据的 children 属性中
-如果 simpleNodes 是一个 JSON 对象,则被简单封装成长度为 1 的数组。
-var setting = {
- data: {
- simpleData: {
- enable: true,
- idKey: "id",
- pIdKey: "pId",
- rootPId: 0,
- }
- }
-};
-var simpleNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"}
-];
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.transformTozTreeNodes(simpleNodes);
-
-更新某节点数据,主要用于该节点显示属性的更新。
-1、可针对 name、target、 url、icon、 iconSkin、checked、nocheck 等这几个用于显示效果的参数进行更新,其他用于 zTreeNodes 的参数请不要随意更新,对于展开节点,还请调用 expandNode方法,因此请勿随意修改 open 属性。
-2、用此方法修改 checked 勾选状态不会触发 beforeCheck / onCheck 事件回调函数。
-请通过 zTree 对象执行此方法。
-指定需要更新的节点 JSON 数据
-请务必保证此节点数据对象 是 zTree 内部的数据对象
-checkTypeFlag = true 表示按照 setting.check.chkboxType 属性进行父子节点的勾选联动操作
-checkTypeFlag = false 表示只修改此节点勾选状态,无任何勾选联动操作
-当 setting.check.enable = true 且 setting.check.chkStyle = "checkbox" 时才有效
-不影响父子节点中 treeNode.nochecked = true 的节点。
-目前无任何返回值
-var treeObj = $.fn.zTree.getZTreeObj("tree");
-var nodes = treeObj.getNodes();
-if (nodes.length>0) {
- nodes[0].name = "test";
- treeObj.updateNode(nodes[0]);
-}
-
-