Angularjs过滤并选中所有复选框

前端之家收集整理的这篇文章主要介绍了Angularjs过滤并选中所有复选框前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一系列我正在展示的项目
<tr ng-repeat="i in items | filter:search_text" ...>

这些项目有一个表示“已选择”的复选框.
当我需要执行诸如调用删除所有选定项目的删除功能之类的操作时,如何知道过滤器显示哪些项目?

已选择(在复选框中选中)然后通过过滤隐藏的项目仍被选中.我需要一种方法来了解此刻屏幕上的哪个项目.

您可以使用$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;
      });
   };
});

然后,您可以在ng-click或任何其他需要的地方调用selectAllFilteredItems().

猜你在找的Angularjs相关文章