标识触发sort事件的ng-grid

时间:2014-04-07 11:52:20

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

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

2 个答案:

答案 0 :(得分: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都有自己的处理事件的控制器。

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

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

答案 1 :(得分:1)

你需要的是什么:

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

无需定义gridId。