2016-06-01 27 views
1

我想根據(單個)複選框篩選表。問題是我不知道如何將複選框值與數據庫內數組中的一個值進行比較。我已經試過這一點,但它不工作:對於數組內的數組ng-repeat

<input type="checkbox" ng-model="myMaster" ng-true-value="{{vm.user.master}}" ng-false-value='' /> {{vm.user.master}}</label> 

<tr ng-repeat="course in vm.courses |filter:search| limitTo: 50"> 
     <span ng-repeat="master in course.master | filter:myMaster"> 
       <td >{{course.courseName}}</td>.... 

vm.courses.master確實有不同的主值,其中一個是vm.user.master的數組。任何人都知道如何解決這個問題?

編輯:這是vm.courses:vm.courses 這是vm.user:enter image description here

EDIT2:這是我的控制器的結構:[Controller]3

+0

你能打印vm.courses內部和vm.user內部的內容嗎? –

+0

絕對!編輯問題@Juanín – sacan

+0

我不太確定你的成績。對於我所看到的,您試圖打印一個或多個具有用戶主人的課程,並且可以是主人屬性(後勤,質量,生產等)中的任何一個。我對嗎? –

回答

0

試試這個:

<span ng-repeat="(key,value) in course.master" ng-show="value==myMaster"> 
+0

這將過濾器限制爲僅物流,我希望它能夠全面運行。我有更多的用戶,他們可能會有不同的主人 – sacan

+0

如果你的領域課程。大師包含一個大師字典,你應該創建自己的過濾器,並檢查myMaster是否包含在這本字典 –

+0

這沒有工作:/ – sacan

0

您是否嘗試將循環移出到tbody標記並將內循環移出?像這樣:

... 
<tbody ng-repeat="course in vm.courses |filter:search| limitTo: 50"> 
    <tr ng-repeat="master in course.master | filter:myMaster"> 
    <td>{{course.courseName}}</td> 
... 

A table can have zero or more tbody tags

,如果你想在對象上的具體變量篩選您也可以創建自己的custom comparer做這個。

+0

現在嘗試這個,這使得孔表消失 – sacan

+0

你有一個jsFiddle,我可以做到這一點在? –

+0

我以前沒有做過,但我可以嘗試一個! – sacan