今天開發的時候,因為需求需要實現同一個頁面左右兩棵樹,如果選中某一棵樹的某一個節點,相應的另一顆樹的該節點也被選中。(兩棵樹是有關聯的。當然可以根據自己需要改變聯動條件和方式)。此處不再粘貼實現樹的代碼,僅僅展示實現聯動的方法。
效果如圖:
效果圖
代碼:
function linkageTreeClick(event, treeId, treeNode) {
var param = treeNode.id; //獲得點擊樹的ID
var otherTree = $.fn.zTree.getZTreeObj(treeId);
// 選取樹的所有節點
var nodes = otherTree.getNodesByParam(param);
//遍歷樹的節點
for (var i in nodes) {
if(param==nodes[i].id){
otherTree.selectNode(nodes[i]);
return;
}
}
}
其中treeId為你想與之聯動的樹的ID,將該方法在zTree的onclick方法中進行調用,根據自己情況,傳入參數,然后實現聯動。方法selectNode()參數為樹的節點,作用為:使該節點被選中。