AngularJS中多个特定模型性质的过滤(在OR关系中)

AngularJS中多个特定模型性质的过滤(在OR关系中)

请看下面的示例:http:/docs.angularjs.org/api/ng.filter:filter

您可以通过以下方法按任何电话属性进行搜索:<input ng-model="search">您可以只使用名称搜索,只需使用<input ng-model="search.name">,并根据名称对结果进行适当的过滤(键入电话号码不会像预期的那样返回任何结果)。

假设我有一个具有“名称”属性、“电话”属性和“秘密”属性的模型,我将如何过滤双管齐下“名称”和“电话”属性和“秘密”财产?因此,在本质上,用户可以键入名称或电话号码,然后将ng-repeat将正确过滤,但即使用户输入的值等于“秘密”值的一部分,它也不会返回任何内容。

谢谢。


一只名叫tom的猫
浏览 641回答 3
3回答

梦里花落0921

创建了自己的排序函数,并且我想分享它(因为我很无聊)。形势我想通过一系列的汽车过滤。要筛选的属性是名称、年份、价格和公里。物业价格和公里是数字(因此使用.toString)。我还想控制大写字母(因此).toLowerCase)。另外,我希望能够将我的过滤器查询分成不同的单词(例如,给定Filter 2006 Acura,它发现2006年与年份匹配,Acura与名称匹配)。我传递给过滤器的函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;attrs&nbsp;=&nbsp;[car.name.toLowerCase(),&nbsp;car.year,&nbsp;car.price.toString(),&nbsp;car.km.toString()], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;filters&nbsp;=&nbsp;$scope.tableOpts.filter.toLowerCase().split('&nbsp;'), &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;isStringInArray&nbsp;=&nbsp;function&nbsp;(string,&nbsp;array){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;j=0;j<array.length;j++){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(array[j].indexOf(string)!==-1){return&nbsp;true;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i=0;i<filters.length;i++){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!isStringInArray(filters[i],&nbsp;attrs)){return&nbsp;false;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;};
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

AngularJS