Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在ng网格中禁用选择_Javascript_Angularjs_Angular Ui_Ng Grid - Fatal编程技术网

Javascript 如何在ng网格中禁用选择

Javascript 如何在ng网格中禁用选择,javascript,angularjs,angular-ui,ng-grid,Javascript,Angularjs,Angular Ui,Ng Grid,是否可以使用内置功能“禁用”或锁定ng网格的选择?我希望用户能够选择一行,单击一个按钮,然后网格将保持锁定,直到用户按下另一个按钮 是,您可以从beforeSelectionChange返回false以禁用更改网格上的选定行 $scope.option = { enableRowSelection: true, }; $scope.gridOptions = { data: 'myData', beforeSelectionChange: function() {

是否可以使用内置功能“禁用”或锁定ng网格的选择?我希望用户能够选择一行,单击一个按钮,然后网格将保持锁定,直到用户按下另一个按钮

是,您可以从
beforeSelectionChange
返回
false
以禁用更改网格上的选定行

$scope.option = {
    enableRowSelection: true,
};
$scope.gridOptions = {
    data: 'myData',
    beforeSelectionChange: function() {
      return $scope.option.enableRowSelection;
    }
    //, ...
};
HTML:

冻结选择
解冻选择
示例代码:


另请参见:

这适用于Angular 2.3:

  constructor() {
    this.gridOptions = <GridOptions>{};
    this.gridOptions.suppressCellSelection = true;
  }
constructor(){
this.gridOptions={};
this.gridOptions.suppressCellSelection=true;
}

将下面的代码添加到gridoption

enableRowHeaderSelection: false

这是可行的,但现在我意识到我需要将一些输入框移出构建网格的div,这样它们就不会被锁定,问题是我认为它们无法访问外部网格的范围,是否可以将范围传递出去?在按下编辑按钮后,用例能够编辑当前选定的行。是的,可以找到网格范围并将其传递给另一个函数,然后调用
$gridScope.apply
,但直接编辑gridOptions.data可能更容易。对数据的更改(
myData
,在上面的示例中)通常会自动显示在网格中。您可能还需要
gridOptions。suppressRowClickSelection
。这不会提供问题的答案。若要评论或要求作者澄清,请在其帖子下方留下评论-
enableRowHeaderSelection: false