我有一系列我正在展示的项目
<tr ng-repeat="i in items | filter:search_text" ...>
Run Code Online (Sandbox Code Playgroud)
这些项目有一个表示"已选择"的复选框.当我需要执行诸如调用将删除所有选定项目的删除功能之类的操作时,如何知道过滤器显示哪些项目?
已选择(在复选框中选中)然后通过过滤隐藏的项目仍被选中.我需要一种方法来了解此刻屏幕上的哪个项目.
Ben*_*esh 12
您可以使用$ filter来调用控制器中的过滤器.
app.controller('MyCtrl', function($scope, $filter){
var filter = $filter('filter');
$scope.items = [/* your items here */]
$scope.selectAllFilteredItems = function (){
var filtered = filter($scope.items, $scope.search_text);
angular.forEach(filtered, function(item) {
item.selected = true;
});
};
});
Run Code Online (Sandbox Code Playgroud)
然后selectAllFilteredItems(),您可以拨打ng-click或其他任何需要的地方.
| 归档时间: |
|
| 查看次数: |
9519 次 |
| 最近记录: |