我怎么可以选择行的目的dojox.enhancedGrid?我使用selectionMode:'single' 例如用无线电按钮。

dijit.byId("gridViewWidget").selection.selectedIndex 返回rowIndex.但是如何获得rowObject的指数?我可以得到的 rowNode()但是我需要的是值id列的该行。

它可能travarse HTML DOM返回的 rowNode() 但是没有任何直接的方式?

我目前正在使用 dijit.byId("gridViewWidget").store._dataArray[i] 并通过返回的索引。虽然这工作看来_dataArray是私人财产。因此,它是安全使用?

有帮助吗?

解决方案

我是新来的道场自己,但这应该是有用的,如果不完全正确的。第一, dojox.grid.enhancedGrid 是建立在 dojox.grid.DataGrid, ,因此检查文件:

dojox.格。数据表格的文件

  • 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>

注意“formatThisColumn”功能:这得到在数据网格称为至少每行一次,并且被传递的行的索引(JSON项目内)和包含该“当前”项的对象(使用' I”索引)。这给你从JSON响应,而数据网格所呈现的原始值。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top