gpt4 book ai didi

javascript - 如何在 Angular UI 网格中选择下一行?

转载 作者:搜寻专家 更新时间:2023-11-01 04:36:30 26 4
gpt4 key购买 nike

我有一个选定的行,通过单击某个按钮(目前我通过 AngularHotkeys.js 使用空格)我想取消选择当前行并选择当前选定行之后的下一个。

知道我可以用不同的列对表进行排序,事情就更复杂了。因此,如果知道应用了当前排序的当前行的索引,那就太好了。

我从哪里开始解决这个问题?
任何建议表示赞赏。

最佳答案

您可以从 $scope.gridApi.grid.renderContainers.body.visibleRowCache 中获取处于排序和过滤状态的行数组。当您拥有实体和拥有 gridRow 时,还需要处理很多技巧,因此代码会变得有点复杂。

你的代码应该是这样的:

$scope.selectNextRow = function() {
var currentRowIndex;
var selectedRows = $scope.gridApi.selection.getSelectedRows();
if( selectedRows.length < 1 ){
// if nothing selected, we'll select the top row
currentRowIndex = -1;
} else {
// if there are multiple selected, we use the first one
var selectedRow = selectedRows[0];
var gridRow = $scope.gridApi.grid.getRow(selectedRow);
currentRowIndex = $scope.gridApi.grid.renderContainers.body.visibleRowCache.indexOf(gridRow);
}

$scope.gridApi.selection.clearSelectedRows();
$scope.gridApi.selection.selectRow($scope.gridApi.grid.renderContainers.body.visibleRowCache[currentRowIndex + 1].entity);
};

引用http://plnkr.co/edit/Z7HCjVY6oxGJzyjLI6Qo?p=preview

关于javascript - 如何在 Angular UI 网格中选择下一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29544320/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com