在下面的plunkr中,有一个带有一些记录的ng-grid。 ng-grid中的每一行都有一个删除按钮,点击该按钮监听器时不会被调用。
[http://plnkr.co/edit/ffEfZP8ygV1pMD8PGQgV?p=preview][1]
请告诉我为什么不点击
调用此监听器答案 0 :(得分:0)
您需要在$scope.apply();
方法的末尾添加AddToGrid
,如下所示
$scope.addToGrid = function() {
$scope.myData.push({
"firstName": $scope.firstName,
"lastName": $scope.lastName,
"company": $scope.company,
"employed": $scope.employed
});
$scope.firstName = '';
$scope.lastName = '';
$scope.company = '';
$scope.employed = false;
$scope.apply();
}
答案 1 :(得分:0)
如果您在模板中使用变量$ index,则会出现问题。 试试这样:
ng-click="grid.appScope.removeRow(row)"
然后,在您的removeRow函数中,您现在正在接收行对象。只需在您的数据对象中找到它并将其删除即可。
var index = $scope.myData.indexOf(row.entity);
$scope.gridOptions.data.splice(index, 1);