Function(treeId, treeNode, newName, isCancel)setting.callback.beforeRename

概述[ 依赖 jquery.ztree.exedit 扩展 js ]

用于捕获节点编辑名称结束(Input 失去焦点 或 按下 Enter 键)之后,更新节点名称数据之前的事件回调函数,并且根据返回值确定是否允许更改名称的操作

节点进入编辑名称状态后,按 ESC 键可以放弃当前修改,恢复原名称,取消编辑名称状态

从 v3.5.13 开始,取消编辑状态也会触发此回调,根据 isCancel 参数判断

默认值:null

Function 参数说明

treeIdString

对应 zTree 的 treeId,便于用户操控

treeNodeJSON

将要更改名称的节点 JSON 数据对象

newNameString

修改后的新名称

isCancelBoolean

是否取消操作 (v3.5.13+)

isCancel = true 表示取消编辑操作(按下 ESC 或 使用 cancelEditName 方法)

isCancel = false 表示确认修改操作

返回值Boolean

返回值是 true / false

如果返回 false,zTree 将保持名称编辑状态,无法触发 onRename 事件回调函数,并且会导致屏蔽其它事件,直到修改名称使得 beforeRename 返回 true

如果返回 false,不会让 input 输入框获取焦点,避免由于警告信息而导致反复触发 beforeRename。 请在关闭提示警告信息后,利用 editName 方法让 input 重新获取焦点。

setting & function 举例

1. 禁止修改的名称的长度小于 5

function zTreeBeforeRename(treeId, treeNode, newName, isCancel) {
	return newName.length > 5;
}
var setting = {
	edit: {
		enable: true
	},
	callback: {
		beforeRename: zTreeBeforeRename
	}
};
......