使用 ng-repeat 过滤特定列

Filter certain column with ng-repeat

我尝试在特定键上使用 ng-repeat 过滤对象数组,或者您甚至可以将其称为列。 应用过滤器的 key/column 来自一个选择框。

data-ng-model="selectedValue" // -> item.name

要搜索的字词来自输入框,贴标如下:

<input type="text" data-ng-model="q">

<div data-ng-repeat="item in items |filter:{selectBoxValue:q}">{{item.name}}</div> 

遗憾的是,以上方法不起作用。 但是当我在过滤器中使用 item.name instat of selectBoxValue 时,效果很好。

找到解决办法。 现在您可以过滤特定的列,以防 anyProperty。

<input type="button" ng-click="changeFilter('anyProperty')">
<input type="text" ng-model="q[filter]">
<div ng-repeat="item in items | filter:q">

$scope.changeFilter = function(q){
   $scope.filter = q;
}

在您的控制器中:
$scope.search = {}

在您的标记中

<input ng-model="colName"> //colName <input ng-model="search[colName]"> //colvalue

<div data-ng-repeat="item in items |filter:search">{{item.name}}</div>