Показать сообщение отдельно
  #1 (permalink)  
Старый 02.04.2012, 12:53
Новичок на форуме
Отправить личное сообщение для Rulila Посмотреть профиль Найти все сообщения от Rulila
 
Регистрация: 02.04.2012
Сообщений: 2

не догружаются данные в store
Добрый день.. Все перепробовал да ничего не получается.. в общем у меня есть 2 взаимосвязанных комбобокса. при измении одного в другом должны обновляться данные из бд. если заполнить 1 комбо а после 2.. После изменить 1 и попробовать войти во второй то появляется картинка loading.. (причем на фоне видны правильно обновленные поля комбобокса)

Отладка в браузере google, не дала результата, потому что нет ошибки, и все данные правильно загружаются. Причем картинка loading.gif подгружается после изменения 1 комбобокса, а уж после загружается результат выборки из бд для 2 комбо.
вот код
var MainForm;

function SpecComboboxFillData(kodlpu)
{
    var prov= Ext.get('SpecCombobox');
    if (prov===null)
    {
    var SpecCombobox = Ext.create('Ext.form.field.ComboBox', {
        fieldLabel: 'Выберите специализацию врача',
        id:"SpecCombobox",
        displayField: 'name',
        valueField: 'id',
        width: 500,
        store: "SpecStore",
        forceSelection: true,
        queryMode: 'local'
    });
    MainForm.add(SpecCombobox);
    Ext.getStore("SpecStore").load({params: {lpu:kodlpu}});
    }
    else
    {
        Ext.getStore("SpecStore").load({params: {lpu:kodlpu}});
    }
}

Ext.onReady(function(){
    MainForm=Ext.create('Ext.form.Panel', {
        title: 'Веб-регистратура',
        renderTo: Ext.getBody()
    });
    Ext.define('ComboboxModel', {
        extend: 'Ext.data.Model',
        fields: [        {
            name: 'id', 
            type: 'string'
        },
        {
            name: 'name',  
            type: 'string'
        }]
    });
    
    var LPUStore=Ext.create('Ext.data.Store', {
        model: 'ComboboxModel',
        storeId:"LPUStore",
        proxy: {
            type: 'ajax',
            url : 'php/LPUCombobox.php',
            reader: {
                type: 'json',
                root: 'data'
            }
        }
    })
    LPUStore.load();
    Ext.create('Ext.data.Store', {
        model: 'ComboboxModel',
        storeId:"SpecStore",
        proxy: {
            type: 'ajax',
            url : 'php/SpecCombobox.php',
            queryMode: 'local',
            reader: {
                type: 'json',
                root: 'data'
            }
        }
    })
    var LPUCombobox = Ext.create('Ext.form.field.ComboBox', {
        fieldLabel: 'Выберите Мед. Учреждение',
        id:"LPUCombobox",
        width: 500,
        displayField: 'name',
        forceSelection: true,
        store: "LPUStore",
        queryMode: 'local',
        listeners: {
            select: function(combo, records, eOpts)
            {
                var lpu=records[0].data.id;
                SpecComboboxFillData(lpu);
            }
        }
    });
    MainForm.add(LPUCombobox);
});



из php выводятся данные формата {success:true, data:[{..},..]}. С ними все впорядке.. но вот изза чего картинка подгружается не знаю.. подскажите?
Ответить с цитированием