Javascript.RU

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

Ext.FormPanel.load() && ComboBox
Ext.FormPanel.load() чудесно работатет с textfield/datefield/radio/checkbox. А как загружать ComboBox'ы? For example: у меня 4 ComboBox'а (2-ва с mode: "local" + Store с autoLoad: true; 2-ва с mode "remote"). Я передаю с сервера ID'шки ComboBox'в. Ну и как мне теперь все это свести до кучи?
__________________
"Helo, word!" - 17 errors 56 warnings
Ответить с цитированием
  #2 (permalink)  
Старый 18.06.2010, 18:42
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

И в чём проблема?
Ответить с цитированием
  #3 (permalink)  
Старый 18.06.2010, 19:08
Аватар для Ex_Soft
Профессор
Отправить личное сообщение для Ex_Soft Посмотреть профиль Найти все сообщения от Ex_Soft
 
Регистрация: 19.12.2009
Сообщений: 164

Сообщение от Kolyaj Посмотреть сообщение
И в чём проблема?
Проблема, как я ее вижу, в том, что мне необходимо дождаться:
1. Окончания загрузки Store #1 с autoLoad: true;
2. Окончания загрузки Store #1 с autoLoad: true;
3. Окончания загрузки Form'ы
И только потом, когда эти три ансинхронные события выполнятся, установить для 2-х ComboBox'ов с mode: "local" значения, полученные с сервера. А как поступать с ComboBox'ами с mode: "remote" - даже пока не устаканилось. Давайте пойдем от простого к сложному: в начале сведем до купы три выше перечисленных асинхронных события.
__________________
"Helo, word!" - 17 errors 56 warnings
Ответить с цитированием
  #4 (permalink)  
Старый 03.12.2010, 07:30
Новичок на форуме
Отправить личное сообщение для EugeneAbl Посмотреть профиль Найти все сообщения от EugeneAbl
 
Регистрация: 03.12.2010
Сообщений: 6

У меня такая же проблема.
Как Вы ее решили ?
Ответить с цитированием
  #5 (permalink)  
Старый 03.12.2010, 09:11
Аватар для cmygeHm
Профессор
Отправить личное сообщение для cmygeHm Посмотреть профиль Найти все сообщения от cmygeHm
 
Регистрация: 12.10.2010
Сообщений: 196

Напиши ему в личку или на мыло, он может на форуме последний раз тогда был.
Ответить с цитированием
  #6 (permalink)  
Старый 03.12.2010, 10:09
Аспирант
Отправить личное сообщение для underW Посмотреть профиль Найти все сообщения от underW
 
Регистрация: 31.03.2009
Сообщений: 81

дождаться загрузки нескольких Store. Это надо сделать или что?

Если это, то я бы сделал так: опишу алгоритм:

обьявляем переменную i=0; После успешной загрузки Store выполняем функцию i++, проверяем значение переменной i - если оно равно количеству всех Store - значит они все загрузились. Все ок, мы дождались, делаем то что запланировали.
Ответить с цитированием
  #7 (permalink)  
Старый 03.12.2010, 10:17
Аспирант
Отправить личное сообщение для underW Посмотреть профиль Найти все сообщения от underW
 
Регистрация: 31.03.2009
Сообщений: 81

Сообщение от cmygeHm Посмотреть сообщение
Напиши ему в личку или на мыло, он может на форуме последний раз тогда был.
Ex_Soft Последняя активность: 01.12.2010 00:58
Ответить с цитированием
  #8 (permalink)  
Старый 03.12.2010, 10:31
Новичок на форуме
Отправить личное сообщение для EugeneAbl Посмотреть профиль Найти все сообщения от EugeneAbl
 
Регистрация: 03.12.2010
Сообщений: 6

Проблема была в том, что на форме есть combobox, значения которого грузятся с сервера. После загрузки необходимо, чтобы выбранное значение в списке было установлено в соответствии с данными, которые тоже выдаются сервером в форму. Так как сама форма грузится асинхронно и combobox тоже грузится асинхронно, то приходится синхронизировать эти две загрузки так, чтобы после загрузки формы дождаться загрузки списка уже потом выбрать в нем требуемое значение.
Пока сделал так, что жду загрузку формы, затем делаю load на combobox и затем выбираю в нем требуемый элемент.
Но как-то мне это не очень нравится. Вот если бы был механизм в combobox, при котором в случае загрузки с сервера, сразу можно было указать какой элемент в списке должен быть установлен после загрузки. Это бы было более логично. Но ничего похожего не нашел.
Ответить с цитированием
  #9 (permalink)  
Старый 03.12.2010, 11:32
Аватар для cmygeHm
Профессор
Отправить личное сообщение для cmygeHm Посмотреть профиль Найти все сообщения от cmygeHm
 
Регистрация: 12.10.2010
Сообщений: 196

Два варианта:
1. делай загрузку комбобокса и в случае успешной загрузки делай загрузку формы:
combo.store.load({params:{id: id}, url: '/asdfasdfsf/asdf/sfsaf/', success: function(){
form.getForm().load();
}});

2. Делай загрузку сторе. В комбо сделай листенер onload:
combo.store.on('load', function(){
        form.getForm().load();
    });

Я бы так пошел.
Ответить с цитированием
  #10 (permalink)  
Старый 03.12.2010, 11:45
VKS VKS вне форума
Профессор
Отправить личное сообщение для VKS Посмотреть профиль Найти все сообщения от VKS
 
Регистрация: 24.09.2010
Сообщений: 178

вариант 3й - использовать расширение saki
http://examples.extjs.eu/popcombo.html
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод текста в combobox KonstantinV Элементы интерфейса 4 25.11.2009 09:52
Grid + ComboBox kostiaGt ExtJS 3 05.11.2009 17:15
Как в ячейку грида всунуть combobox? kostiaGt ExtJS 1 29.10.2009 17:46
Появляющийся combobox, отражающий иерархию Zzet Общие вопросы Javascript 3 09.09.2009 18:01
dojo combobox stop_nasty@mail.ru Dojo toolkit 0 14.03.2009 01:08