ag-grid:prorgamatically从当前选定的行中选择下一行

时间:2016-10-21 12:41:50

标签: ag-grid

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

我正在尝试使用“下一步”按钮选择网格中的下一行。

$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/

中找不到任何内容

最值得赞赏的任何帮助!

enter image description here

1 个答案:

答案 0 :(得分:3)

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

$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,或者如果您正在使用分组,您可能需要检查它是否是父母或不要并采取相应的行动