How do I scroll an ngGrid to show the current selection?

前端 未结 4 1652
甜味超标
甜味超标 2021-02-04 13:15

I\'m setting the selection of my ngGrid from JavaScript, calling gridOptions.selectItem(). I have multiSelect set to false, so there is only ever one row selected.

4条回答
  •  独厮守ぢ
    2021-02-04 14:02

    It sounds like you can make use of the scrollTop method for the scrolling.

    See also http://github.com/angular-ui/ng-grid/issues/183 and the following plunker from @bryan-watts http://plnkr.co/edit/oyIlX9?p=preview

    An example how this could work would be as follows:

    function focusRow(rowToSelect) {
      $scope.gridOptions.selectItem(rowToSelect, true);
      var grid = $scope.gridOptions.ngGrid;
      grid.$viewport.scrollTop(grid.rowMap[rowToSelect] * grid.config.rowHeight);
    }
    


    edit:

    For the second part of your question "disabling the mouse and keyboard events of the selected rows" it might be best to start a new Question. Sounds like you want to set your enableRowSelection dynamically to false? No idea if that's possible.

提交回复
热议问题