当我使用ng-table对某些内容进行排序或过滤时,其$ index不会更新。如果我有4个项目,使用deleteRow($ Index)在ng-click中排序ASC,那么$ index将是0到3.现在如果我将它们排序为DESC,那么第一行仍然有$ index = 3,尽管它应该是0.所以我尝试删除第一行,它最后删除了最后一行,因为$ Index仍然设置为3.当我尝试删除过滤的行时,会发生同样的事情。
答案 0 :(得分:4)
如果您将ng-repeat
与orderBy
一起使用,请尝试从this post
开始删除项目。
可能看起来像这样:
HTML:
....
<tr ng-repeat="user in users | orderBy:'name':true">
<td data-title="'Name'">
<span ng-bind="user.name"></span>
<button ng-click="remove(user)"></td>
</tr>
...
在控制器中:
$scope.remove = function(user){
$scope.users.splice($scope.users.indexOf(user), 1);
}