Мне нужно заполнить combobox whit store, все отлично работает, кроме одного. ¿Почему в магазине заполняется только displayField, а не valueField.Extjs - Populate combobox whit store не соответствует
В этой строке
form.loadRecord(records[1]);
Я установил, что запись в форме, это хорошо, но когда я пытаюсь отправить форму я надеюсь, что значение «2», а не значение «Медиа».
Код и пример на Jsfiddle для лучшего объяснения.
var store = Ext.create('Ext.data.Store', {
fields: ['id', 'status'],
data: [
{ id: '1', status: 'Baja' },
{ id: '2', status: 'Media' },
{ id: '3', status: 'Alta' },
{ id: '4', status: 'Urgente' }
]
});
var formPanel = Ext.create('Ext.form.Panel', {
title: 'Edit Country',
url: 'http://aaa.com/',
items: [
{
xtype: 'combobox',
fieldLabel: 'Nombre',
name: 'status',
anchor: '50%',
displayField: 'status',
valueField: 'id',
store: store
}
],
buttons: [
{
text: 'Guardar',
handler: function() {
var form = formPanel.getForm();
var value = form.getValues();
alert(value.status);
}
}
],
renderTo: Ext.getBody()
});
store.load({
scope: this,
callback: function(records, operation, success) {
var form = formPanel.getForm();
form.loadRecord(records[1]);
}
});
Спасибо.
Я думаю, вы поняли, что 'ComboBox.select()', 'Form.loadRecord()' и ' Form.getValues () 'do. В вашем примере показывается только идентификатор. См. Мой ответ для объяснения. –