У меня есть несколько кнопок, которые динамически помещаются в ng-repeat. Я хочу иметь возможность «выбрать» кнопку. Под этим я имею в виду, когда я нажимаю на один, его CSS меняется. Когда я нажимаю другой, первая кнопка возвращает исходный CSS и выбирается новая кнопка. Может кто-нибудь мне помочь?Изменение CSS динамической кнопки при нажатии
HTML:
<button ng-repeat="answer in regular_answers" ng-attr-id="{{'answer' + answer.regularAnswerId}}" class="button button-balanced button-block" ng-click="selectAnswer(answer)">
{{answer.answer}}
</button>
JS:
$scope.selectAnswer = function (answer) {
if (document.getElementById('answer' + answer.regularAnswerId).hasClass('button-selected')) {
document.getElementById('answer' + answer.regularAnswerId).removeClass('button-selected');
document.getElementById('answer' + answer.regularAnswerId).addClass('button-balanced');
}
else {
document.getElementById('answer' + answer.regularAnswerId).removeClass('button-balanced');
document.getElementById('answer' + answer.regularAnswerId).addClass('button-selected');
}
}
Вы хотите использовать группу переключателей? Скройте кнопки, покажите только их ярлыки, настройте метки в зависимости от того, выбрана ли их кнопка, например. input [type = radio]: checked + label ... не использует JavaScript для управления презентацией. –