使用ng-repeat按列过滤表格

prt*_*nkl 1 json field filter angularjs

我正在使用Angular.js构建一个应用程序.在这个应用程序中,我通过AJAX以JSON格式获取一些数据.我正在显示表中列出的这些数据,并将搜索文本输入用于过滤它.

我用这种方式实现了过滤器:

[...]
<input ng-model="searchText"/>
[...]
<tr ng-repeat="data in datarray | filter:searchText">
<td>{{data.title}}<td>
<td>{{data.message}}<td>
<tr>
[...]
Run Code Online (Sandbox Code Playgroud)

我想要(并且不知道如何)做的是仅针对某些字段(例如其标题)过滤该数据.

例如:如果我有data[0]标题"猫"和消息"猫和狗",data[1]标题为"狗"和消息"猫和狗",我搜索"猫",我只想data[0]显示,而不考虑数据消息,但只有标题.

小智 12

如doc:https://docs.angularjs.org/api/ng/filter/filter中所述

你应该正确设置你的ng模型:

<input ng-model="search.title" />
Run Code Online (Sandbox Code Playgroud)

您还可以组合搜索列:

<input ng-model="search.title" />
<input ng-model="search.message" />
Run Code Online (Sandbox Code Playgroud)

并在您的过滤器中:

<tr ng-repeat="data in datarray | filter:search">
  <td>{{data.title}}<td>
  <td>{{data.message}}<td>
<tr>
Run Code Online (Sandbox Code Playgroud)

这是一个演示:http://plnkr.co/edit/LCWV35PvbU7rLQvgqiOw?p =preview