Ag grid ag grid:自动从当前选定行中选择下一行
我在一个常规项目中使用ag网格 我正在尝试使用“下一步”按钮来选择网格中的下一行Ag grid ag grid:自动从当前选定行中选择下一行,ag-grid,Ag Grid,我在一个常规项目中使用ag网格 我正在尝试使用“下一步”按钮来选择网格中的下一行 $scope.NextButtonClick = function (){ console.log("next button clicked"); var selectedNodes = $scope.gridOptions.api.getSelectedNodes(); var indexCurrentSelection = selectedNodes[0].childIndex; 我希
$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)
但是我在文档中找不到任何东西
非常感谢您的帮助
假设您的
行选择:'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的其他版本,或者如果您使用的是分组,您可能需要检查它是否为父级,并相应地采取行动它无法正常工作!因为在您第一次选择nextElement之后,您有两个选定的元素,因此在此之后它将不起作用。您应该使用node.setSelected(true,true);第二个true将取消选择所有选定的节点,然后选择当前节点,这样在最新版本中就不再有childIndex了。你应该用rowIndex来代替它