當選擇一個節點修改信息保存,異步刷新節點並保持節點選中狀態。
// 獲取id為tree的zTree對象
var zTree = $.fn.zTree.getZTreeObj("tree");
// 獲取當前被選中的節點數據集合,假設只選中一個節點,並且該節點為子節點
var nodes = zTree.getSelectedNodes();
// 強行異步加載父節點的子節點
// 注意:[setting.async.enable = true 時才有效]
// getParentNode獲取節點的父節點。
zTree.reAsyncChildNodes(nodes[0].getParentNode(), "refresh");
// zTree.getNodeByParam根據節點數據的屬性搜索,獲取條件完全匹配的節點數據 JSON 對象
// 先獲取節點屬性
var nodeId = nodes[0].id;
// 用於捕獲異步加載正常結束的事件回調函數
zTree.setting.callback.onAsyncSuccess = function(event, treeId, treeNode, msg) {
// zTree.selectNode選中指定節點
// 注意,zTree.getNodeByParam("id", nodeId)獲取到是一個對象數組
zTree.selectNode(zTree.getNodeByParam("id", nodeId)[0]);
}