如何根据下拉值在表格上应用过滤器

时间:2019-07-30 11:35:40

标签: angularjs ng-options

我有一个下拉列表,其值为

<select ng-model="recat"  ng-options="r.Id as r.Name for r in Categories">
    <option value="" disabled="" class="">-- Select Category --</option>
    <option label="All" value="string:0" selected="selected">All</option>
    <option label="TAB" value="string:1">MALE</option>
    <option label="Project" value="string:2">Fe-Male</option>
</select>

我的表为

<tr ng-repeat="r in rabanalysisreport | filter:recat">
    <!-- SomeData -->
</tr>

这是我的问题,当我选择全部(0)我想同时显示两者男性和女性记录时。但是这里只显示男性或女性

1 个答案:

答案 0 :(得分:0)

在范围中创建自定义过滤器方法。 喜欢:

$scope.customFilter = function( criteria ) {
  return function( item ) {
    if (criteria === '0') {
      return true;
    } else {
      return item.recat === criteria;
    }
  };
};
<tr ng-repeat="r in rabanalysisreport | customFilter(recat)">
    <!-- SomeData -->
</tr>

如果您提供数据示例,可以做更详细的代码