首页 > 解决方案 > 从 Ext.tree.Panel 中获取选定的条目

问题描述

我试图通过单击 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' 

});

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

标签: javascriptextjs

解决方案


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

这是使用的示例idFIDDLE


推荐阅读