0

我正在使用 ExtJS 4。我创建了一个树面板

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
    });

现在我想检索 'Operational' 孩子作为

Ext.getCmp('operationalNode');

但它返回null。

为什么会这样?

如何检索该节点?

有没有办法通过它的名字来检索节点?

4

2 回答 2

2

节点是具有节点接口的实际模型。所以你应该只使用 treestore 中的 getNodeById

var node = treeStore.getNodeById('operationalNode')

您的数据在 node.data 中,就像在任何其他模型中一样

于 2012-06-14T11:25:24.487 回答
0

你需要这样的东西:

Ext.getCmp('id-of-the-view').getView().getSelectionModel().getSelection()[0];
于 2012-06-14T11:22:19.933 回答