2016-05-05 10 views
1

私のタイトルはおそらくかなり曖昧でした。シナリオは、私がNGリピートで表示されているオブジェクトのコレクションを持っているということです。2つのフィルタをコレクションに適用しますが、1(AngularJS)のみを使用します。

Search : <input ng-model="searchText" /><button ng-click="Export(filteredEntry)">Export Data</button> 
<tbody id="itemTable"> 
<tr ng-repeat="entry in (filteredEntries = (entries limitTo:pageSize | filter: searchText))" 
</tr> 
</tbody> 

示す項目の量は、あなたが次または前のセットを見ることができますボタンで「limitTo」によって制限されています収集し、検索ボックスでフィルタリングします。ボタンをクリックすると、フィルタ結果(filteredEntries)のみが別のテーブルに渡されます。

私のコレクションは100個のオブジェクトであり、limitTo = 10です。ユーザーが検索ボックスに「ハット」を入力し、100個のエントリのコレクションが23個のエントリにフィルタリングされるとしましょう。 私の問題は、[エクスポート]ボタンをクリックすると、limitToとsearchの両方がfilteredEntriesに適用されているため、最初の10項目だけが渡されます。観察されたエントリーを10に制限する方法はありますか?23のエントリーのすべてをエクスポートテーブルに渡す方法はありますか?

答えて

2

ng-ifを使用すると、上位N項目のみを表示できます。しかし、フィルタ検索では配列全体が検索されます。そんなに感謝のhttp://plnkr.co/edit/qAiQOOLSwsPcz7tmSrF6?p=preview

<div ng-repeat="book in books | filter:searchText" ng-if="$index < 5"> 
+0

右:ここで作業Plunkerです。 – byteGeist

関連する問題