Фильтровать массив с помощью флажков с AngularJS

У меня есть следующий код, где я пытаюсь отфильтровать игроков в массиве, установив флажок для размера игрока.

Я знаю, что у меня есть массив данных в ретрансляторе, а затем фильтрующие входы в элементе вне элемента массива данных (два разных div), может ли это быть причиной разъединения? Поскольку я замечаю, когда я добавляю флажок к элементу повторителя, я получаю некоторую форму массива обратной связи, когда я нажимаю флажок.

Связывание поля ввода поиска было так просто реализовать, однако я трачу слишком много времени, чтобы получить этот простой флажок для фильтрации данных.

Поэтому я теперь обращаюсь к сообществу Angular за небольшой помощью по фильтрации с помощью флажков, так как документация не очень хорошо освещает эту тему.

Вот скрипка:http://jsfiddle.net/rzgWr/1/

<div ng-controller="MyCtrl">
<div>
<div ng-repeat="pants in players | groupBy:'pants'">
    <b><input type="checkbox" ng-model="query"/>{{pants}}</b>
    <span>({{(players | filter:pants).length}})</span>
</div>

<div>
    <ul>
    <li ng-repeat="player in players | filter:query">
        <p><b>{{player.name}}</b></p>
        <p>{{player.shirt}} {{player.pants}}, {{player.shoes}}</p>
    </li>
    </ul>    
</div>
</div>

function MyCtrl($scope, filterFilter) {
$scope.players = [
    {name: 'Bruce Wayne', shirt: 'XXL', pants: '42', shoes: '12'},
    {name: 'Wayne Gretzky', shirt: 'XL', pants: '38', shoes: '10'},
    {name: 'Michael Jordan', shirt: 'M', pants: '32', shoes: '9'},
    {name: 'Player Two', shirt: 'XXL', pants: '42', shoes: '12'}
]; 

$scope.$watch('filtered', function (newValue) {
    if (angular.isArray(newValue)) {
        console.log(newValue.length);
    }
}, true);    

}

Любая помощь и совет искренне приветствуются.

Благодарю.

Ответы на вопрос(2)

Ваш ответ на вопрос