I use TreeStore
& TreePanel
. I need to insert new node in my Tree , how to this?
I have TreeStore
component who following config:
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'
},
}
I have defined Task Model (it is what I want to insert) with blank value:
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'
}
]
});
I want to insert new record when event itemdlclick
is fired:
I have tested that but it doesn't work:
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);
}
Thanks a lot :) !
I think you asked the similar question here!
There is no insert method for tree panel. You will have to get hold of the tree's root node to modify the tree. In your case, you might have to do the following:
var rootNode = monPretree.getRootNode();
rootNode.insertChild(4,task);
For other tree manipulation methods, refer the API documentation of NodeInterface.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With