2012-06-14 35 views
0

我使用ExtJS的4 我創建了一個樹面板如何檢索treepanel的節點?

var treeStore = Ext.create('Ext.data.TreeStore', { 
     root: { 
      text:'Reports', 
      expanded: true, 
      children: [ 
       { 
        id: 'operationalNode', 
        text: 'Operational', 
        children: [{ text: "report1", leaf: true }] 
       }, 
       { 
        id: 'managementNode', 
        text: 'Management', 
        children: [{ text: "report2", leaf: true }] 
       }, 
       { 
        id: 'inventoryNode', 
        text: 'Inventory' 
       } 
      ] 
     } 
    }); 
var treePanel = Ext.create('Ext.tree.TreePanel',{ 
    animate:true, 
    layout:'fit', 
    height:400, 
    store:treeStore 
    }); 

現在我想找回「運作」孩子一樣

Ext.getCmp('operationalNode'); 

但它返回null。

這是爲什麼?

如何檢索該節點?

有什麼方法可以通過名稱檢索節點嗎?

回答

2

節點是具有節點接口的實際模型。所以你應該只使用getNodeById從treestore

var node = treeStore.getNodeById('operationalNode') 

你的數據是node.data就像任何其他車型

0

你會需要這樣的事:

Ext.getCmp('id-of-the-view').getView().getSelectionModel().getSelection()[0]; 
+0

WAW這麼複雜...... – nscrob

+0

遺憾的評論,但他並沒有問檢索選定的節點 – nscrob

+1

回答ExtJS問題的人數很少,所以我決定分享想法,即使它不是最好的。 – Leron

相關問題