我正在AngularJs中创建一个项目。我在过滤数据时遇到问题。数据来自API,形式为0和1.我以条件形式显示数据,如:
ng-if = 0;内部
ng-if = 1;外部
我的问题是,当我在搜索框中输入0和1时,数据会被过滤,但我希望在搜索框中输入内部和外部时过滤数据。
这是我的代码:
<input type="search" ng-model="customersFlowsList.linkStatus" class="flow_filter_searchbox">
<li ng-repeat="customersFlowsList in customersFlows | filter:{linkStatus:customersFlowsList.linkStatus} | unique:'linkStatus'">
<div class="check_box">
<input type="checkbox" id="checkbox1" name="checkbox2" ng-model="filterLink[customersFlowsList.linkStatus]">
<label for="checkbox1"><span for="checkbox1">{{customersFlowsList.linkStatus | contractStatusName}}</span></label>
</div>
</li>
答案 0 :(得分:0)
您可以编写一个简单的自定义过滤器功能来执行此操作。一些示例代码可能如下所示:
$scope.filterFn = function(item){
if($scope.search.Mode == "external"){
return item.Mode == 1
}
else if ($scope.search.Mode == "internal"){
return item.Mode == 0;
}
else return false;
};
然后使用新的过滤功能
替换ng-repeat中的过滤器ng-repeat="item in items | filter: filterFn"
此外,另一个选项可能是当您从0和1收到数据到内部或外部时替换数据上的属性,然后您的原始搜索将起作用。