如何重新加载树的选定节点

删除节点的其中一个叶后,我需要重新加载树。 重新装满整个商店的问题是,它太慢了。 这就是为什么我只想重新加载其叶子被删除的节点。

我试过这个..但它说空...

Ext.getCmp('myTree').root.reload();

我也试过了

var tempParent = Ext.getCmp('myTree').getSelectionModel().getSelection()[0].parentNode;
Ext.StoreMgr.lookup('myStore').load( {node: tempParent});

这也无济于事......有没有人有类似的问题已解决?

更新

var node = Ext.getCmp('myTree').getSelectionModel().getSelection()[0].parentNode.get('id');

这确实给了我父节点...但是当我加载它

Ext.getCmp('myTree').store.load({ node: node });

我得到这个错误

TypeError:b.getId不是函数

第二次更新 -

这是我的树看起来像

  • 第一节点

  • 第一片叶子
  • 第二节点

  • 第一片叶子
  • 现在,当我删除第二个节点的第一个叶子...第一个节点出现在第二个节点下

  • 第一节点

  • 第一片叶子
  • 第二节点

  • 第一节点

  • 以下是如何刷新树的特定节点。 在你的情况下,你可能想要刷新一个需要显示更改的父节点:

       refreshRow:function(id){
            var node = this.store.getNodeById(id);
            if (node){
                this.store.load({node:node});
            }
         }
    

    更新

    根据您提供的信息,我的结论是,您正试图在树中的多个位置使用特定的服务器生成的ID填充同一个节点。 树存储不支持这一点。 即使节点信息的其余部分相同,每个节点也必须具有唯一的ID。

    链接地址: http://www.djcxy.com/p/68159.html

    上一篇: how to reload a selected node of a tree

    下一篇: side internationalization for Backbone and Handlebars