角度ui网格行选择

vam*_*nem 4 angularjs ng-grid angular-ui-grid

我正在使用角度ui.grid我的问题是当我使用下面的单击它所选择的行时

enableRowSelection: true,
enableRowHeaderSelection: false,
multiSelect: false 
Run Code Online (Sandbox Code Playgroud)

我换了之后

enableRowSelection: true,
enableRowHeaderSelection: true,
multiSelect: false 
Run Code Online (Sandbox Code Playgroud)

现在只选择复选框工作,但没有工作点击行请帮助...

mol*_*lar 8

据说这个问题早已修复(https://github.com/angular-ui/ui-grid/commit/679b615bd19ff71ff1e835d7f6066e7a919f279a),但它仍然在angular-ui-grid 3.1.1版本中仍然存在

有一个关于它的新问题(https://github.com/angular-ui/ui-grid/issues/5474),其解决方法是使用以下方法覆盖css规则:

.ui-grid-cell.ui-grid-disable-selection.ui-grid-row-header-cell {
  pointer-events: auto;
}
Run Code Online (Sandbox Code Playgroud)


c0b*_*bra 5

请参阅此问题:https ://github.com/angular-ui/ng-grid/issues/2254

目前,行标题选择和行选择不能协同工作。我相信前者的目的是作为使用单元格导航时进行行选择的解决方法。

该更改被列为增强功能,因此已在路线图上,只是未计划在 3.0 版本中发布。

更新:

好的,这就是你可以如何做到这一点(尽管依赖未发布的测试版模块来处理“紧急”的事情并不是一个好主意,IMO)。

从选择功能的 uiGridCell 指令中获取代码,将其剥离出来,然后将其放入您自己的模块中。具体这里的代码:https://github.com/angular-ui/ng-grid/blob/v3.0.0-rc.20/src/features/selection/js/selection.js#L757

这是一些未完成的示例代码。您需要确保不绑定行标题单元格,否则复选框选择将不起作用。

angular.module('ui.grid.custom.rowSelection', ['ui.grid'])

.directive('uiGridCell', function ($timeout, uiGridSelectionService) {
  if ($scope.col.isRowHeader) {
    return;
  }

  registerRowSelectionEvents();

  function selectCells(evt) { ... }
  function touchStart(evt) { ... }
  function touchEnd(evt) { ... }
  function registerRowSelectionEvents() { ... }
});
Run Code Online (Sandbox Code Playgroud)

最后,这是一个演示整个事情的笨蛋。您可以复制此代码并根据需要进行调整:http://plnkr.co/edit/44SYdj19pDDaJWiSaPBt ?p=preview