您的位置:首页 > 其它

zTree动态加载子节点

2015-11-30 14:17 495 查看
我这个案例里不是采用zTree默认的async进行异步加载,而是在onExpand事件里用ajax请求数据,

然后再动态的添加子节点,代码如下:

var setting = {
data: {
keep: {
parent: true,
}
},
callback: {
onExpand: expandNode,
beforeExpand: beforeExpand,
},
};

//展开节点
var parentNode = null;
function expandNode(e, b, node) {
if (node.AppID != null) {
parentNode = node;
$.ibo.crossOrgin({
url: "url",
funcName: "function",
data: "data",
success: function (res) {
if (res.ResFlag == $.ResFlag.Success) {
if (res.ResObj && res.ResObj.List && res.ResObj.List.length > 0) {
var newNodes = [];
$.each(res.ResObj.List, function (i, n) {
newNodes.push({ name: n.Decription, icon: "../../img/icon.png" });
});
var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
treeObj.addNodes(parentNode, newNodes);
}
}
}
});
}
};

function beforeExpand(e, node) {
var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
parentNode = node;
treeObj.removeChildNodes(parentNode);
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: