我在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/
中找不到任何内容最值得赞赏的任何帮助!
答案 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,或者如果您正在使用分组,您可能需要检查它是否是父母或不要并采取相应的行动