从Ext.tree.Panel获取选定的条目

时间:2018-10-01 16:13:41

标签: javascript extjs

我试图通过单击Ext.form.Panel中的按钮来删除Ext.tree.Panel上的选定条目。 我听控制器上的按钮单击,然后调用删除功能:

...
deleteTreeNode: function (button) {   
        //get tree
        var treepanel = Ext.widget('storagetree');       
        // get selected item
        var selectedNode=treepanel.getSelectionModel().getSelection();     
        console.log(selectedNode);        
        // deleted
        if(selectedNode)
        {
            selectedNode.remove(true);
        }       
    }
....

selectedNode包含一个空数组Array []

我的Ext.tree.Panel:

Ext.define('BookApp.view.StorageTree', {
    extend: 'Ext.tree.Panel',
    alias: 'widget.storagetree',
    xtype: 'storagetreetype',
    alias: 'widget.storagetree',
    rootVisible: false,  
    store: 'StorageStore',
    itemId: 'StorageTree' 

});

如何正确获取所选记录以将其删除?

1 个答案:

答案 0 :(得分:1)

来自文档:Ext.widget Convenient shorthand to create a widget by its xtype or a config object.
Ext.widget将创建另一棵树并返回实例,因此在新创建的树中没有选择。
而是使用referenceid

以下是使用id的示例:FIDDLE