ag-grid:按顺序 select 当前 select 行的下一行

ag-grid: prorgamatically select next row from currently selected row

我在 anugular1 项目中使用 ag-grid。

我正在尝试将 'Next' 按钮移到网格中的下一行 select。

$scope.NextButtonClick = function (){
    console.log("next button clicked");
    var selectedNodes = $scope.gridOptions.api.getSelectedNodes();
    var indexCurrentSelection = selectedNodes[0].childIndex;

我希望有一个像

这样的功能
    var nextNode = MagicalStoreOfallNodes.getNodeByIndex(indexCurrentSelection + 1);
    nextNode.setSelected(true, true)

但我在文档中找不到任何内容https://www.ag-grid.com/javascript-grid-model/

非常感谢任何帮助!

假设你的 rowSelection:'single(我猜你的问题如果是 'multiple' 就没有意义),你可以这样做:

$scope.nextRecord = function () {
    let selectedNodes = $scope.gridOptions.api.getSelectedNodes();
    if (selectedNodes && selectedNodes.length === 1) {
        let selectedNode = selectedNodes[0];
        $scope.gridOptions.api.forEachNode((node) => {
            if (node.childIndex === (selectedNode.childIndex + 1)) {
                node.setSelected(true);
                return;
            }
        });
    }
};

但请注意,这是一个简单的版本 - 如果您使用过滤,您可能需要使用其他版本的 forEach,或者如果您使用分组,您可能需要检查它是否是一个parent 或不采取相应行动