Я столкнулся с интересной проблемой, когда использовал комбо в форме ввода.Моя форма содержит комбо, которые получают данные из магазинов JSON.Он отлично работает при добавлении новой записи, но когда форма открыта для редактирования существующей записи, иногда идентификатор отображается как выбранное, а не его значение (например: 5 вместо «apple»)Я думаю, что он пытается установить значение до завершения загрузки комбо.
Есть ли способ решить эту проблему?Я положил код здесь, который создает комбо:
function dictComboMaker( store, fieldLabel, hiddenName, name, allowBlank, myToolTipp ) {
comboo = {
xtype : 'combo',
id: 'id-'+name,
allowBlank: allowBlank,
fieldLabel : fieldLabel,
forceSelection : true,
displayField : 'value',
valueField : 'id',
editable: false,
name: name,
hiddenName : hiddenName,
minChars : 2,
mode: 'remote',
triggerAction : 'all',
store : store
};
function dictJsonMaker(url) {
store = new Ext.data.JsonStore({
root : 'results', // 1
fields : [ 'id','value' ],
url : url,
autoLoad: true});
return store;
}
var comboKarStore = dictJsonMaker('/service/karok');
var comboKar= dictComboMaker(comboKarStore, 'Kar', 'karid', 'kar', false, '');
// then comboKar is added to the form
Хубидуби