在Ext.tree.panel中的特定位置插入节点

nil*_*esh 5 javascript extjs extjs4

我正在尝试更改此ext js treegrid示例:http://dev.sencha.com/deploy/ext-4.0.1/examples/tree/treegrid.html

我想要的只是在特定位置添加节点.

我试过这个:

 var treePanel = Ext.getCmp('treePanel');
 var selNode = treePanel.getSelectionModel().getSelection()[0];
 var appendedChild = selNode.appendChild({
                       task: 'Task1',
                       user: 'Name',
                       duration: '10',
                       leaf: true
                     });
Run Code Online (Sandbox Code Playgroud)

它没有错误,但UI不会更新.同样的事情selNode.insertChild(0, ..它运行没有错误,但UI不会更新.

不知何故,这有效:

var node = treePanel.store.getRootNode();
node.appendChild({
                    task: 'Task3',
                    user: 'Name',
                    duration: '10',
                    leaf: true
                });
Run Code Online (Sandbox Code Playgroud)

那么如何根据用户选择在特定位置追加/插入.

以下是我的完整代码:http://jsfiddle.net/4T68s/
我将存储更改为静态数据,因为获取json数据的跨域请求不起作用.

Krz*_*tof 4

在向节点添加子节点之前,您应该将leaf属性更改为节点:false

selNode.set('leaf', false);
Run Code Online (Sandbox Code Playgroud)

工作示例: http: //jsfiddle.net/lolo/4T68s/6/