是否可以让ui-grid中的每一行都有唯一的ID?第一行的行有一个id为“row-0”,第二行有“row-1”等等
所以:
<div class="ui-grid-row"
ng-class="{'ui-grid-row-selected': row.isSelected,'ui-grid-tree-header-row': row.treeLevel > -1}"
ng-repeat="(rowRenderIndex, row) in rowContainer.renderedRows track by $index"
ng-style="Viewport.rowStyle(rowRenderIndex)">
...
</div>
看起来像:
<div class="ui-grid-row"
id="row-0"
ng-class="{'ui-grid-row-selected': row.isSelected,'ui-grid-tree-header-row': row.treeLevel > -1}"
ng-repeat="(rowRenderIndex, row) in rowContainer.renderedRows track by $index"
ng-style="Viewport.rowStyle(rowRenderIndex)">
...
</div>
我已尝试过行模板但是在每个单元格上设置了id(可能与预期一样)
在使用Selenium时我可以通过使用id
找到它来选择一行更新:我现在尝试将行模板上的Id设置为
row-{{rowRenderIndex}}-cell-{{col.uid}}
这会产生类似
的内容id="row-0-cell-uiGrid-0007"
如果我然后离开屏幕并再次返回,则ID变为
id="row-0-cell-uiGrid-00PW"
如果id每次都一致,那么我可以使用这个
答案 0 :(得分:0)
您可以使用$ index
<div class="ui-grid-row"
id="{{$index}}"
ng-class="{'ui-grid-row-selected': row.isSelected,'ui-grid-tree-header-row': row.treeLevel > -1}"
ng-repeat="(rowRenderIndex, row) in rowContainer.renderedRows track by $index"
ng-style="Viewport.rowStyle(rowRenderIndex)">
...
</div>
答案 1 :(得分:0)
行和列一起形成一个元组(行,列),它对于网格中的每个单元格都是唯一的。对于UI-Grid,有一种方法可以使用这个概念。 每个单元格都可以访问UI网格的内部范围变量。在此范围内,有两个键'row'和'col'。每个都有uid属性。 因此,使用元组('row.uid','col.uid')对于每个单元格始终是唯一的。 用法示例(Angular JS):
<div class="ui-grid-cell-contents" trigger-id="{{row.uid + col.uid}}">
{{ COL_FIELD }}</div>
触发器ID对于每个单元都是唯一的。对于同一页面上的多个网格,请在范围变量中命名网格并使用grid.appScope.gridName