2017-01-16 8 views
0

私は古いAngularJS 1.xを使用しています。さまざまなキー/値を持つJSONオブジェクトがあります。どのようにして配列の値のいずれかをフィルタリングできます。私は、グローバルな検索入力フィールドを作成し、そのデータ内にある任意の値を入力したいと考えています。コントローラでsearch()を実行したいと思います。このような何か...Angular 1 - Array/JSON内のすべての値のグローバルフィルタ(検索)

$scope.search = function(searchTerm){ 
    // Loop through objects - angular.forEach 
    // Loop through key/values 
     // return matches 
} 

検索は、それはだの1の値(IndexOfメソッドを)> -1持つオブジェクトのリストを返しますが、事前に おかげHTMLで

+0

を使ってとても簡単ですがあるときに、検索機能を返すために何を想定しています1つのマッチがある場合、複数のマッチがある場合また、すべてのオブジェクト値が文字列型であると仮定できますか?検索は、値文字列の先頭、値文字列の末尾、または値文字列のどこかでのみ一致しますか?完全一致またはあいまい一致のみをサポートする必要がありますか?正規表現やプレーンテキストだけで検索できますか?これまでに試したことを示すプランナーを提供してください。 – GPicazo

+1

これには[フィルタ](https://docs.angularjs.org/api/ng/filter/filter)フィルタを使用できます。オブジェクトに文字列値がある場合、 'searchTerm'はフィルタリングのためにオブジェクトプロパティの文字列一致を行います。 –

答えて

0

Enter subject: <input type = "text" ng-model = "searchText"> 
Subject: 
<ul> 
    <li ng-repeat = "studentInfo in students | filter: searchText"> 
    </li> 
</ul> 

searchTextはstudentInfoのすべてのフィールドをフィルタリングします。

0

それは、この質問はあまりにも広く、明確化が必要な角度JS 1つの概念

<input type="text" value="Search" ng-model="searchquery"> 

<div ng-repeat="datalist in datalists | filter:searchquery"> 
<span>Name : {{ datalist.name }}</span> 
<span>Age : {{ datalist.age }}</span> 
<span>Age : {{ datalist.Designation }}</span> 
</div> 

Using Angular js 1

Using Angular 2

関連する問題