Я создаю таблицу, используя ng-repeat в angularjs, и я хочу изменить цвет фона строки при нажатии кнопки. Как и при нажатии "Да", зеленый цвет должен быть установлен, а кнопка "Без кнопок" не установлена. кто-нибудь может помочь
Каждая строка имеет идентификатор. Все, что вам нужно сделать, это отправить этот идентификатор функции setSelected(),
сохранить его (например, в $scope.idSelectedVote
), а затем проверить каждую строку, если выбранный идентификатор совпадает с текущим. Вот решение (см. Документацию или ngClass, если необходимо);
$scope.idSelectedVote = null;
$scope.setSelected = function (idSelectedVote) {
$scope.idSelectedVote = idSelectedVote;
};
,
<ul ng-repeat="vote in votes" ng-click="setSelected(vote.id)" ng-class="{selected: vote.id === idSelectedVote}">
...
</ul>
<ul ng-repeat="vote in votes" ng-click="setSelected(vote.id)" ng-class="
{selected: vote.id === idSelectedVote}">
...
</ul>
в контроллере
$scope.idSelectedVote = null;
$scope.setSelected = function (idSelectedVote) {
$scope.idSelectedVote = idSelectedVote;
};
обратитесь: http://plnkr.co/edit/SkaYSbtKFdx1I9N0xP5E?p=preview