我是angularJs的新手。我正面临一个问题,我需要通过查找数组中的元素来过滤数组(在ng-repeat中)。
<div class="row" ng-repeat="(class_list_key, class_list) in trialList | filter: {class_id:selected_class_option_arr}">
我尝试了上面的代码(这是错误的)。此处selected_class_option_arr
是一个数组,其中包含使用trialList
过滤class_id
数组的值。
数组selected_class_option_arr
就像这样 -
["Sat_09:00_AM_10:30_AM", "Fri_10:00_AM_11:00_AM"]
我试图找到但根据我的要求没有得到适当的例子。
答案 0 :(得分:1)
在ng-repeat中提供过滤函数并循环遍历反对数组以过滤掉所需的值:
<div class="row" ng-repeat="classList in trialList | filter: filterClass >
在控制器中:
$scope.filterClass = function(classList) {
for(var i=0; i < selected_class_option_arr.length; i++) {
return classList.class_id.indexOf(selected_class_option_arr[i]) != -1
}
};
Working Plunker:https://plnkr.co/edit/yQ7D9fwwitfMktOkGjF8?p=preview