我将JSON文件显示为表格,我想使用两个步骤在此表格中搜索:
从选择菜单中选择一个选项,以选择要搜索的列。
输入,用于输入您要搜索的关键字。
那么如何将“所选选项形式选择标签”的值与“输入”的值连接起来?
例如,用户从选择菜单中选择了“名称”选项,然后他在输入中输入了“John”
这是我的代码:
https://jsfiddle.net/p1nkfpez/7/
public void println(String x) {
synchronized (this) {
print(x);
newLine();
}
}
我希望Angular过滤器如下: 滤波器:keyword.selection
答案 0 :(得分:2)
您可以创建一个动态创建过滤器对象的函数:
$scope.getFilter = function() {
return {
[$scope.selection]: $scope.keyword
}
}
并像这样使用它:
<tr data-ng-repeat="row in myRows | filter:getFilter()">
...
</tr>
答案 1 :(得分:1)
您可以创建自定义过滤器,您可以在其中按名称访问您的属性。
自定义过滤器
$scope.myCustomFilter = function(row){
if($scope.keyword == undefined || $scope.keyword.length == 0)
return true;
if(row[$scope.selection].toLowerCase().indexOf($scope.keyword) >= 0){
return true;
}
else
return false;
}
并将过滤器添加到ng-repeat
<tbody>
<tr data-ng-repeat="row in myRows | filter: myCustomFilter">
<td>{{$index + 1}}</td>
<td>{{row.nm}}</td>
<td>{{row.cty}}</td>
<td>{{row.hse}}</td>
<td>{{row.yrs}}</td>
</tr>
</tbody>