AngularJS过滤器只在某些对象上

前端之家收集整理的这篇文章主要介绍了AngularJS过滤器只在某些对象上前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的用户对象定义如下。
$scope.user = [{id: 1,friends:
    [
        {name: 'John',age: 21,sex: 'M'},{name: 'Brad',age: 32,sex: 'M'}
    ]
}]

我有以下代码

<input type="text" ng-model="searchText">
<div ng-repeat="friend in user.friends | filter:searchText">
  {{friend.name}} {{friend.age}}
</div>

这里每当我搜索,我得到结果的名字,年龄和性别。但是我想只搜索姓名和年龄,我不想要性别可搜索。任何人可以帮助我如何实现这一点?

我不知道这是你以后的事情。如果要使一个输入字段匹配多个属性,则需要一个要过滤的过滤器函数
$scope.user = {id: 1,friends: [{name: 'John',{name: 'May',age: 64,sex: 'F'}]};

$scope.searchFilter = function (obj) {
    var re = new RegExp($scope.searchText,'i');
    return !$scope.searchText || re.test(obj.name) || re.test(obj.age.toString());
};

这是一个小提琴的例子
http://jsfiddle.net/fredrik/26fZb/1/

原文链接:https://www.f2er.com/angularjs/144359.html

猜你在找的Angularjs相关文章