【问题标题】:Identify the ng-grid on which the sort event was fired识别触发排序事件的 ng-grid
【发布时间】:2015-03-21 07:12:26
【问题描述】:

我在同一个视图/部分中有两个 ng-grid,需要确定在哪个 ng-grid 上触发了排序事件。我怎么做?我正在使用ngGridEventSorted 事件。

【问题讨论】:

  • 我正要回答您的确切需要,为什么您删除了问题?请取消删除,我会将答案推送到那里完善您所追求的内容,并在取消删除后给我链接。

标签: angularjs angular-ui angular-ui-bootstrap ng-grid


【解决方案1】:

您可以使用event.targetScope 访问触发事件的范围

$scope.$on('ngGridEventSorted', function(event, args) {
   var targetScope = event.targetScope;
   // inspect targetScope's properties to differentiate between the two grids
});

另一种方法是在网格周围创建两个包装 div,每个都有自己的控制器来处理事件。

<div ng-controller="controllerOne">
   <ng-grid ...>
</div>

<div ng-controller="controllerTwo">
   <ng-grid ...>
</div>

【讨论】:

  • 我是按照列号做的
【解决方案2】:

这就是你所需要的:

$scope.$on('ngGridEventSorted', function(event,data) {
            if ($scope.gridOptions1.gridId==event.targetScope.gridId){
                ...
            }
            if ($scope.gridOptions2.gridId==event.targetScope.gridId){
                ...
            }
        });

而且不需要定义gridId。

【讨论】:

    猜你喜欢
    • 2016-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    • 2021-09-18
    • 2017-06-26
    • 2015-10-12
    相关资源
    最近更新 更多