如何基于路径值extjs追加/插入子项

时间:2017-08-31 11:17:32

标签: extjs extjs4.1 extjs4.2

Ext.getCmp('treepanel-id').getSelectionModel().getSelection()[0].getPath('parent')

我得到了:

"//Grandparent/Parent1/leaf1"

我需要在路径后插入一个叶子 请帮帮我。

1 个答案:

答案 0 :(得分:1)

没有标准的方法可以做到这一点,但是,根据您的问题,我看到您要在当前所选节点之后附加一个兄弟节点。由于您已经有了对所选节点的引用,因此可以这样实现:

var selectedNode = Ext.getCmp('treepanel-id').getSelectionModel().getSelection()[0],
    parentOfSelectedNode = selectedNode.parentNode,
    selectedNodeIndex = parentOfSelectedNode.indexOf(selectedNode);

parentOfSelectedNode.insertChild(selectedNodeIndex + 1, {
    text: 'New sibling node',
    leaf: true
});