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, время: 23:44. |