Таблица SAPUI5: получить неотображаемые значения выбранной строки?

У меня есть приложение SAPUI5 (OpenUI5) с таблицей. Эта таблица привязана к модели (JSON) и отображает имя объекта и некоторые другие атрибуты, но не технический ключ. Пользователь должен иметь возможность выбрать несколько строк в таблице, а затем приложение должно иметь возможность получить технические ключи выбранных строк (вероятно, используя базовую модель). Как бы я поступил так?

Заранее спасибо!


person Daniel    schedule 13.04.2014    source источник
comment
Какую таблицу вы используете? sap.ui.table.Table или sap.m. Таблица?   -  person Tim Gerlach    schedule 13.04.2014
comment
можно ваш код?   -  person Tuhin    schedule 14.04.2014


Ответы (2)


Событие rowSelectionChange имеет атрибут rowContext. Лучшим подходом было бы

  rowSelectionChange: function(oEvent) {
    console.log(oEvent.getParameters().rowContext.getProperty("your_key"));
  }

чтобы получить значение вашего ключа (или любого поля в выбранной строке, соответствующим образом адаптировав значение getProperty)

person Qualiture    schedule 23.04.2014
comment
Вот дополнительные вопросы: как бы я сделал то же самое, не инициированное событием rowSelectionChange, но, например. нажатием кнопки сформировать снаружи? - person Daniel; 30.06.2014
comment
@DanielArnreich В этом случае вы можете либо прочитать метод таблицы getSelectedIndices() и выполнить итерацию по возвращенным индексам, либо (ИМО лучший подход) по-прежнему использовать событие rowSelectionChange (для сохранения выбранных объектов строки в массиве в модели) и при нажатии кнопки вы просто используйте этот массив - person Qualiture; 01.07.2014

когда вы выбираете строку в таблице, происходит событие, называемое «rowSelectionChange». Используйте это событие и getSelectedInedx строки. Используя цикл значения индекса по вашему json, вы получите выбранную строку значений.

person SPEC    schedule 23.04.2014