Ich habe ein paar Schaltflächen, die dynamisch in einer ng-Wiederholung platziert werden. Ich möchte in der Lage sein, eine Schaltfläche auszuwählen. Damit meine ich, wenn ich auf eins klicke, ändert sich dessen CSS. Wenn ich auf eine andere Schaltfläche klicke, erhält die erste Schaltfläche ihr ursprüngliches CSS zurück und die neue Schaltfläche wird ausgewählt. Kann mir jemand helfen?Ändern Sie CSS der dynamischen Schaltfläche auf klicken
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');
}
}
Möchten Sie eine Optionsfeldgruppe verwenden? Blenden Sie die Schaltflächen aus, zeigen Sie nur ihre Beschriftungen an, formatieren Sie die Beschriftungen abhängig davon, ob ihre Schaltfläche ausgewählt ist, z. input [type = radio]: checked + label ... verwendet dann kein JavaScript, um die Präsentation zu steuern. –