ExtJS Combo Отображаемое значение - PullRequest
2 голосов
/ 02 февраля 2011

В ext js, когда у меня есть комбо, есть отображаемое значение и значение (которое отправляется на сервер). Мне не нужно displayValue для отправки на сервер, но мне нужно захватить его на странице и отобразить предупреждение. Что такое метод eextjs для этого? combo.getValue() вернет базовое значение ... а я не вижу combo.getDisplay()

РЕДАКТИРОВАТЬ: просто чтобы уточнить, я ищу, чтобы получить отображаемое значение элемента, выбранного пользователем. Я хочу показать оповещение при первом или сменном событии.

Ответы [ 5 ]

5 голосов
/ 02 февраля 2011

Если для свойства valueField в поле со списком установлено значение, которое вы хотите отобразить в оповещении, оно будет работать нормально.

alert(combo.getValue());

Если вы хотите, чтобы это значение отличалось от значения, которое вы отправляетена сервер вы должны получить хранилище из поля со списком и найти соответствующую запись.

var store = combo.getStore();
var index = store.find('*YourFieldName*', combo.getValue());
if(index != -1)//the record has been found
  {
      var record = store.getAt(index);
      //you can then do what you like with the record.
  }
1 голос
/ 29 июля 2014
 combo.getStore().getById(combo.getValue()).raw.displayAttribute //Ext 4.x, 
 //displayAttribute: displayField or displayed attrib in store data for the combo
0 голосов
/ 07 ноября 2014

Предположим, что в вашем выпадающем списке есть следующее:

id: 'COMBOBOX_ID',
displayField: 'COMBOBOX_DIS_FIELD_NAME',
valueField: 'COMBOBOX_VAL_FIELD_NAME'

Затем вы можете сделать следующее:

var combo = Ext.getCmp('COMBOBOX_ID');
var comboStore = combo.getStore();
var index = comboStore.find('COMBOBOX_VAL_FIELD_NAME', combo.getValue());
if(index != -1)
{
  var selectedItemDisplayValue = combo.getStore().getAt(index).get('COMBOBOX_DIS_FIELD_NAME');
}
0 голосов
/ 16 ноября 2011

Мы можем получить отображаемое значение поля со списком примерно так ...

getRawValue (): String Возвращает необработанное строковое значение комбинации без какой-либо нормализации, преобразования или проверки.Получает текущее значение входного элемента, если поле было отображено, игнорируя значение, если оно представляет собой emptyText.

combo.getRawValue ();

0 голосов
/ 02 февраля 2011

Мы можем получить базовое хранилище, а затем использовать наше значение в качестве ключа для получения отображаемого значения.

Примерно так (я не проверял):

var displayValue = combo.getStore()[combo.getValue()]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...