2013-01-04 41 views
0

之後jsTree子節點沒有被選中我用下面一行代碼成功地打開了一個jsTree節點分支。在OPEN_ALL

$('#jsTree').jstree("open_all", currentNode); 

在這一行之後,我需要選擇currentNode的第一個孩子。爲此,我寫了下面的代碼行。

currentNode = currentNode.children("ul").children("li:first"); 

但是,它不工作!

任何建議將有所幫助。

回答

0

您必須選擇新的當前節點:$('#jsTree').jstree("select_node", currentNode);

0

這行代碼將ONLY打開指定節點的子節點(即currentNode)

$('#jsTree').jstree("open_all", currentNode); 

您正在使用下面的語句是ONLY更新currentNode從父節點參考到第一個子節點。

currentNode = currentNode.children("ul").children("li:first"); 

此聲明與節點的選擇無關。要選擇的第一個子節點,你必須調用選擇方法明確

$('#jsTree').jstree("select_node", currentNode); 


注:根據您的數據源,你很多不是能夠得到使用上面的代碼中的第一個孩子的參考。在我的測試情況下,具有JSON數據源,參考通過

currentNode = currentNode.children("ul").children("li")[0]; 

currentNode = currentNode.children("ul").children("li:first")[0]; 
可用