设置node节点checked选中,有两种方法实现:
(1)、zTree.checkNode(node, true, true);
(2)、node.checked = true;
zTree.updateNode(node); 设置checked属性之后,一定要更新该节点。
function initZTree() {
$.ajax({
url: "/gcsoft/menu/getMenuTreeById.action?id=0",
type: "post",
dataType: "json",
async: false,
success: function(data) {
var setting = {
async: {
enable: true,
url: "/gcsoft/menu/getMenuTreeById.action",
autoParam: ["id", "pid", "name"],
dataFilter: filter
},
data: {
simpleData: {
enable: true,
idKey: 'id',
pIdKey: 'pid',
rootPId: 0
}
},
callback: {
onAsyncSuccess: function zTreeOnAsyncSuccess(event, treeId, treeNode, msg) {
var menuIds = '${menuIdArr}'.split(',');
for(var i = 0; i < treeNode.children.length; i++) {
for(var j = 0; j < menuIds.length; j++) {
//第二种方法node.checked = true;
//再更新节点zTree.updateNode(node);
if(treeNode.children[i].id == menuIds[j])
treeNode.children[i].checked = true
zTree.updateNode(treeNode.children[i]);
}
}
},
onCheck: click
},
check: {
enable: true
},
view: {
showIcon: false
}
};
var zTree = $.fn.zTree.init($("#zTree"), setting, data);
var menuIds = '${menuIdArr}'.split(',');
for(var i = 0; i < menuIds.length; i++) {
//zTree.checkNode(node, true, true);
var node = zTree.getNodeByParam("id", menuIds[i]);
if(node != null) {
zTree.checkNode(node, true)
}
}
}
});
}