ExtJS comboBox устанавливает значение только из JSON, если в имени нет []

используя ExtJS 3 здесь. Я только что заметил (в ответ на мой предыдущий вопрос), что проблема возникает только тогда, когда я не отправляю более одного имени со списком. В настоящее время я настроил имя своего поля со списком, как это name[], потому что я отправлю массив значений. Если я удалю массив [], это сработает, но я смогу получить только последнее отправленное значение со списком. Моя конфигурация представляет собой SuperBoxSelect для нескольких целей выбора, но это также происходит с моим полем со списком:

new Ext.ux.form.SuperBoxSelect({
       store:storeForCompanies,
       fieldLabel:'CN',
       id:'companyField',
       displayField: 'company_name',
       valueField: 'id',
       name:'cn',
       hiddenName: 'company[]',
        typeAhead: true,
        mode: 'remote',
        minChars : 0,
        triggerAction: 'all',
        emptyText:'- Choose -',
        selectOnFocus:true,
        allowBlank:true,
       width: 350
})

Есть ли у меня другие варианты отправить их?

Спасибо.


person Manny Calavera    schedule 20.08.2011    source источник
comment
Пожалуйста, покажите нам свою конфигурацию combobox   -  person Mchl    schedule 20.08.2011
comment
Немного изменил факты. Спасибо.   -  person Manny Calavera    schedule 20.08.2011
comment
Кстати, я также пытался загрузить хранилище со списком до загрузки формы, но значение все еще не установлено.   -  person Manny Calavera    schedule 22.08.2011


Ответы (1)


Я не нашел готового решения, поэтому я прикрепил обработчик успеха к form.load(), который устанавливает значение поля со списком в возвращаемый результат JSON, например:

success: function(form, action)
{
Ext.getCmp('companyField').setValue(action.result.data.company);
}

Таким образом, это работает, не знаю, почему мне нужно вручную установить значение для этого поля со списком, я просто рад, что «исправил» двухдневную проблему в своем приложении, и я открыт для любого другого предложения, которое может указать мне на исправить его должным образом.

Спасибо.

person Manny Calavera    schedule 22.08.2011