Вопрос

Как я могу получить выбранный объект строки Dojox.enhancedGrid? Я использую SyblemodeMode: «Один», например, с помощью радиопередач.

dijit.byId("gridViewWidget").selection.selectedIndexВозвращает rowindex. Но как получить rowObject этого индекса? Я могу получить rowNode()Но то, что мне нужно, это ценность идентификационного столбца этой строки.

Это возможно для траверса HTML DOM возвращается rowNode() Но есть ли прямо вперед?

Я сейчас использую dijit.byId("gridViewWidget").store._dataArray[i] и прохождение возвращенного индекса. Хотя это работает, похоже, _dataArray - частная собственность. Так же безопасно использовать?

Это было полезно?

Решение

Я новичок, чтобы догрузить себя, но это должно быть полезно, если не совсем правильно. Прежде всего, dojox.grid.enhancedGrid построен на вершине dojox.grid.DataGrid, Так что проверить документацию здесь:

Dojox.Grid.dataGrid Документация

  • grid.getItem(idx) Возвращает магазин «Пункт» в данном индексе

  • grid.selection.getSelected() Возвращает массив выбранных элементов

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

Другие советы

Используя декларативную разметку, вы можете сделать что-то вроде (из памяти, возможно, понадобится настроить функционал):

<script type="text/javascript">
function formatThisColumn(rowIndex, rowObject) {
    if (rowObject == null) return;
    field = rowObject.i.fieldName;
    return field;
}
</script>
<div dojoType="dojo.data.ItemFileReadStore" id="store" jsid="jsonStore" url="test.json"></div>
<table dojoType="dojox.grid.EnhancedGrid" id="gridNode" jsid="grid" store="store">
<thead>
<tr>
  <th get="formatThisColumn">A Computed Column</th>
</tr>
</thead>
</table>

Обратите внимание на функцию «Formatthiscolumnumnumbanumn». ). Это дает вам исходные значения от ответа JSON, пока отображается DataGrid.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top