5
我使用TreeStore
& TreePanel
。我需要在我的Tree中插入新节点,如何做到这一点?如何在TreePanel中插入新记录(模型)?
我有谁以下配置TreeStore
组件:
var monPrestore = Ext.create('Ext.data.TreeStore', {
folderSort : true,
model : 'Task',
proxy : {
model : 'Task',
appendId: true,
type : 'ajax',
url : '/intranet-timesheet2-tasks-extjs/getJSON.tcl',
reader : {
type : 'json'
},
writer : {
type : 'json'
},
}
我已经定义任务模型(这是我要插入的)空白值:
Ext.define('Task', {
extend : 'Ext.data.Model',
fields : [
{
name : 'task',
type: 'string'
},
{
name : 'material',
type: 'string'
},
{
name : 'cc',
type: 'string'
},
{
name : 'start_date',
type: 'string'
},
{
name : 'short_desc',
type: 'string'
},
{
name : 'id',
type: 'string'
}
]
});
我要插入新记录当事件itemdlclick
被激发时:
我测试过了,但它不起作用:
个itemdblclick: function(view, model, htmlitem, index, e) {
var task = {
task: 't0',
material: 'm0',
cc: 'c0',
start_date: '12',
short_desc: 'sht',
id: '120',
leaf: true
};
monPretree.insert(4,task);
}
非常感谢!:)
哦,是的,我没有看到我的话题! 我明白了,你的演示。但我的新问题,如果当我想插入一片叶子后?我不知道是否有可能? 我需要添加时,我双击叶。 随着dblclick事件我有参数'索引',我想添加在索引+ 1 – Mepps 2011-05-24 15:45:18
你一定在开玩笑我!如果你可以添加一个子节点,你为什么要创建一个节点叶?好的,现在如果你坚持你需要这种方式,你将不得不删除现有的节点,创建一个新的父节点并将你的孩子插入它。 – 2011-05-24 17:00:21
不,我不是在开玩笑...!所以对不起 我的情况下,它的成功添加叶当我dlbclick项目(无叶),但现在我需要添加当我点击一个叶在同一级别。 当它是叶而不是叶时,行为是不一样的? 我在文档中看到,有方法取代叶子! 对不起,如果我不明白你... – Mepps 2011-05-24 17:05:21