【发布时间】:2016-10-22 21:30:26
【问题描述】:
我有一个带有多选选项的下拉列表。我想从基于该数组的复杂 JSON 中过滤掉数据。
选定的选项形成一个数据数组,例如:
$scope.myval=["Adyar","Paris","central"];
我的 JSON :
$scope.myTest={
"buslist":
{
"code":"1",
"message":"Success",
"fromStationCode":"71",
"searchResult":[ {
"arrivalTime":"17:00:00",
"availableSeats":"42",
"boardingPointDetails":[{
"code":"1631",
"name":"Koyambedu",
"time":"09:30:00"
},
{
"code":"961296",
"name":"Paris",
"time":"09:45:00"
}
]
]
},
{
"arrivalTime":"18:00:00",
"availableSeats":"32",
"boardingPointDetails":[{
"code":"2084",
"name":"Adyar",
"time":"09:30:00"
},
{
"code":"961296",
"name":"Madurai",
"time":"09:45:00"
}
]
]
}
}
...
};
我的 HTML 模板是:
<tbody ng-repeat=" i in myTest.buslist.searchResult" >
<tr>
<td>{{i.arrivalTime}}</td>
<td>{{i.availableSeats}}</td>
<td>
<p ng-repeat="m in i.boardingPointDetails">{{m.name}}</p>
</td>
</tr>
</tbody>
我想根据所选值过滤我的数据。我曾尝试过这样的事情:
$scope.matched = $scope.myTest.buslist.searchResult.boardingPointDetails.name.indexOf(data);
即:选择的选项必须与“boardingPointDetails”中的“name”字段匹配,但它会失败。提前致谢。
【问题讨论】:
标签: arrays angularjs json filter