Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.08.2011, 18:25
Аспирант
Отправить личное сообщение для Black_Prince Посмотреть профиль Найти все сообщения от Black_Prince
 
Регистрация: 11.07.2011
Сообщений: 64

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"
            }
        }


Даже если заполняю вручную сторедж а не через прокси - все равно никаких идентификаторов не существует ни у корня, и у детей...
В чем может быть проблема, может кто встречался с таким?
Ответить с цитированием
  #2 (permalink)  
Старый 16.08.2011, 07:44
Аспирант
Отправить личное сообщение для ilshat Посмотреть профиль Найти все сообщения от ilshat
 
Регистрация: 28.07.2008
Сообщений: 67

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

вообщем то третий самый простой
первые два я показал чтобы было понятно как работать с наследованием классов

Последний раз редактировалось ilshat, 16.08.2011 в 07:48.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jqGrid - получить массив записей treef jQuery 0 10.02.2011 12:13
Обновить страницу если записей не осталось raccoon AJAX и COMET 1 11.08.2010 08:40
Интерактив на странице. Удаление записей blasted Элементы интерфейса 3 01.03.2010 11:36
Ajax и три <form> не работает. Как правильно сделать листание записей из базы данных? vlad275 AJAX и COMET 2 14.12.2009 14:04
идентификаторы и скрипт kez jQuery 4 26.05.2009 09:15