2017-08-23 12 views
0

選択ドロップでngテーブルのデータをフィルタリングしようとしています。問題はselectドロップダウンで値が設定されていないため、ocosのフィルタが機能しません。 0バージョン。 $ scope.namesオブジェクトをハードコードされたオブジェクトに変更しようとしました。つまり、$scope.names=[{title:'Moroni'},{title:'Enos'},{title:'Jacob'}];の値が選択されたドロップダウンに設定されています。オブジェクトごとにプロパティ 'title'が必要であると仮定していますが、まだフィルタリングが機能しません。 ?プランナーHereNgテーブルの選択フィルタの問題

何か助けていただければ幸いです。

答えて

1

私はngOptions属性で表現から見ることができるように:

ng-options="data.id as data.title for data in $selectData" 

オプションのフォーマットは{id: ..., title: ...}する必要があります。

var titles = data.map(function(obj) { return obj.title; }); 
    $scope.names = titles.filter(function(title, i) { return titles.indexOf(title) === i; }) 
         .map(function(title) { return {title: title, id: title}; }); 

これは、この配列を生成するための最速の方法ではありません(だけの構造を説明するために、これを追加):だから私はあなたがこのようなもので、あなたのangular.forEachブロックを変更することができると思います。これを行うより効果的な方法could be found here

Working fiddle.

+0

どのように私はそれを指摘するためにどうもありがとうございました、ngOptions形式のためにDOMにチェックするために欠場でした。 – Praveen