TreeStore - идентификаторы записей
Добрый вечер. Есть вопрос.
Создаю сторедж, помещаю его в дерево, для узлов добавляю id, но по факту это не работает. Приер кода:
var store = Ext.create('Ext.data.TreeStore', {
proxy: {
type: 'ajax',
url: './php/get-nodes.php'
},
root: {
text: 'Node',
id: "id1",
expanded: true
}
})
var tree = Ext.create('Ext.tree.Panel', {
renderTo: 'treecontainer',
/*rootVisible: false,*/
store: store,
height: 300,
width: 250,
listeners:{
itemclick: function(n){
alert(Ext.get("id1")); // something wrong!!! alerts "null"
}
}
Даже если заполняю вручную сторедж а не через прокси - все равно никаких идентификаторов не существует ни у корня, и у детей... В чем может быть проблема, может кто встречался с таким? |
var store = Ext.create('Ext.data.TreeStore', {
id:'store',
proxy: {
type: 'ajax',
url: 'get-nodes.php'
},
root: {
text: 'Node',
id: "id1",
expanded: true
}
})
var tree = Ext.create('Ext.tree.Panel', {
id:'tree',
renderTo: Ext.getBody(),
/*rootVisible: false,*/
store: store,
height: 300,
width: 250,
listeners:{
itemclick:function(view, record) {
alert(Ext.getCmp("tree").store.tree.root.data.id);
alert(Ext.getStore("store").tree.root.data.id);
alert(record.data.id);
}
}
})
Ext.get возвращает ссылку на DOM элементы id корня дерева можно вернуть тремя способами через id компонента tree.Panel либо через id store причем использовать надо разные функции как показано в примере и самый простой через переменные функции... посаженной на itemclick вообщем то третий самый простой:) первые два я показал чтобы было понятно как работать с наследованием классов |
| Часовой пояс GMT +3, время: 17:50. |