При использовании в формах ExtJS выпадающего списка ComboBox вы, должно быть, заметили проблему: форма отправляет отображаемое значение выпадающего списка (displayField), а не его фактическое значение (valueField). Если провести аналогию с обычным
Чтобы решить данную проблему и заставить ExtJS отправлять 3 вместо Вася, необходимо добавить конфигурационный параметр
Будьте внимательны, параметр
Протестировать параметры при отправке формы удобно с помощью Firebug.
<select>
HTML - отправляется Вася, а не 3.<select name="user">
<option value="1">Саша</option>
<option value="2">Иннокентий</option>
<option value="3">Вася</option>
</select>
Чтобы решить данную проблему и заставить ExtJS отправлять 3 вместо Вася, необходимо добавить конфигурационный параметр
hiddenName
:
var userName = new Ext.form.ComboBox({
id:'userName',
name: 'userName',
fieldLabel: 'Имя',
store: usersStore,
displayField: 'name',
valueField: 'id',
hiddenName : 'razdel'
});
Будьте внимательны, параметр
hiddenName
должен быть уникальным для каждого поля формы - он используется при ее отправке вместо параметра name
.Протестировать параметры при отправке формы удобно с помощью Firebug.
Комментариев нет:
Отправить комментарий