2014-09-02 42 views
2

如何使單個搜索過濾多個對象值?Angular JS具有單個ng模型/輸入的多個過濾器

對於例如:如果我搜索 '1' 或 '一',那麼結果應該來........

到目前爲止,我已經試過了:

HTML:

<input type="text" ng-model="model_search"> 
    <ul> 
     <li ng-repeat="obj_data in data | filter:{id:model_search, text:model_search}">{{obj_data.id}}-->{{obj_data.text}}</li> 
    </ul> 

JS:

var myApp = angular.module('myApp', []); 

myApp.controller('MyCtrl', function($scope) { 
    $scope.data = [{ 
    "id": 1, 
    "text": 'one' 
    }, { 
    "id": 2, 
    "text": 'two' 
    }, { 
    "id": 3, 
    "text": 'three' 
    }, { 
    "id": 4, 
    "text": 'four' 
    }, { 
    "id": 5, 
    "text": 'five' 
    }]; 

});

DEMO PLUNKR

回答

2

你很接近,只是改變了過濾器看起來像這樣:

<li ng-repeat="obj_data in data | filter:model_search">{{obj_data.id}}-->{{obj_data.text}}</li> 

工作plunkr下面 http://plnkr.co/edit/0jeA0u8oaz16cYnsZjfw?p=preview

+0

THX link64。但是如果我只想搜索'id'和'text'呢? – Jay 2014-09-02 06:18:35

+0

您很可能需要編寫自定義過濾器 – link64 2014-09-02 23:09:36

相關問題