在 UI 网格中的“全选”复选框中,选中时,会选择当前页面以及其他页面中可见的所有记录。
问题- 我们可以通过什么方式选择仅显示在当前页面中的行。
plunker http://plnkr.co/edit/gHiER0A2Oaia4HMWChcG?p=preview
尝试了 api $scope.gridApi.selection.selectAllVisibleRows();
,但它没有选择仅显示在当前页面中的行。如果单击“选择可见行”按钮并移至下一页,则该处的记录也被选中。
api的其他细节selectAllVisibleRows
在 ui-grid 函数中选中时,selectAllVisibleRows。的row.visible
回报。true
_all the rows across all pages
selectAllVisibleRows: function (evt) {
if (grid.options.multiSelect === false) {
return;
}
var changedRows = [];
grid.rows.forEach(function (row) {
if (row.visible) {
if (!row.isSelected && row.enableSelection !== false){
row.setSelected(true);
service.decideRaiseSelectionEvent( grid, row, changedRows, evt );
}
} else {
if (row.isSelected){
row.setSelected(false);
service.decideRaiseSelectionEvent( grid, row, changedRows, evt );
}
}});
service.decideRaiseSelectionBatchEvent( grid, changedRows, evt );
grid.selection.selectAll = true;
},