2013-12-12 4 views
0

У меня сложный вопрос. Как я могу отфильтровать scrope с несколькими флажками?AnglockJS hardcode checkbox filter

Это моя сфера:

function UserListCtrl($scope, $filter) { 
    $scope.users =[{"user_id":"3","first_name":"Nathalie","last_name":"ABBAS DE CLAUZADE","societe_1":"Strasbourg Magazine \/ CUS Magazine","societe_2":false,"index_1":false,"index_2":false,"index_4":false,"index_5":false,"index_6":false,"index_7":false,"index_8":false,"index_9":false,"index_10":false,"index_11":false,"index_12":true,"index_13":false,"index_14":false,"index_15":false,"index_16":false,"alphabetical":"A"},{"user_id":"4","first_name":"Richard","last_name":"ABOAF","societe_1":"Lyc\u00e9e ORT","societe_2":false,"index_1":false,"index_2":false,"index_4":false,"index_5":false,"index_6":false,"index_7":false,"index_8":true,"index_9":false,"index_10":false,"index_11":false,"index_12":false,"index_13":false,"index_14":false,"index_15":false,"index_16":false,"alphabetical":"A"},":false,"alphabetical":"S"},{"user_id":"679","first_name":"Giulia","last_name":"SILVESTRINI","societe_1":"actas.it","societe_2":false,"index_1":false,"index_2":false,"index_4":false,"index_5":false,"index_6":false,"index_7":false,"index_8":false,"index_9":false,"index_10":false,"index_11":false,"index_12":true,"index_13":false,"index_14":false,"index_15":false,"index_16":false,"alphabetical":"S"}]  
} 

И это мой цикл (Я различный цикл для каждой буквы):

<div class="content"> 
    <ul> 
     <li ng-repeat="user in users | filter: { alphabetical: 'A'} | filter:query"> 
     <p><strong>{{user.first_name}} {{user.last_name}}</strong> <span ng-hide="user.societe_1 == ''" class="societe">{{user.societe_1}}</span> <span ng-hide="user.societe_2 == ''" class="societe">{{user.societe_2}}</span></span></p> 
     </li>      
    </ul>     
</div> 

Таким образом, это хорошо, я использую вход: текст для поиска имени и фамилии. Но мой вопрос в том, как я могу использовать флажок для фильтрации моего цикла?

Я пробовал:

<p class="checkbox"><label for="">Collectivités, service public</label> <input type="checkbox" ng-model="index_2.true"></p> 

Но это не работает

ответ

1

Вы можете применить ту же логику, с alphabetical Фитлер, например:

... | filter:{index_2: index_2} 

хотя, checkbox- модель должна существовать в объеме, поэтому:

ng-model="index_2.true" 

должно быть (хотя и не обязательно по имени index_2):

<input type="checkbox" ng-model="index_2"> 

демо: http://jsbin.com/aqADExE/1/