У меня есть два состояния в angular, одно состояние - для условий accept, а другое - для пользователя, который не принимает условия. Accept terms state динамически заполняет n-число пользователей, и перед их именем у них есть две кнопки, которые обозначаются как "Я согласен" и "Я не согласен". По умолчанию Кнопки находятся в классе по умолчанию, но когда пользователи нажимают кнопку "Я согласен", тогда ее изменение класса (например, цвет кнопки зеленый), то же самое происходит с кнопкой "Я не согласен" (изменение цвета на красный). После нажатия кнопки пользователь отправляет запрос, затем переходит на другую страницу html, которая показывает, кто принимает и отклоняет. На этой странице есть кнопка возврата, которая возвращается в предыдущее состояние.
Моя проблема в том, что когда пользователь возвращается к предыдущему состоянию, я должен изменить класс кнопки в соответствии с выбором пользователя в состоянии загрузки.
В событии click это нормально работает для этого. Я пишу этот код в html:
<div class="mar-right10">
<md-button class="md-raised md-default" id="agree{{$index}}"
ng-class="userBaseExtend.acceptedTermsAndCondition === 'true' ? 'md-primary' : 'md-default'"
role="button" ng-click="vm.agree(userBaseExtend)">
I Agree
</md-button>
</div>
<div flex="" flex-xs="">
<md-button class="md-raised md-default" id="disagree{{$index}}"
ng-class="userBaseExtend.acceptedTermsAndCondition === 'false' ? 'md-warn' : 'md-default'"
role="button" ng-click="vm.disagree(userBaseExtend)">
I Do Not Agree
</md-button>
</div>
для загрузки обратно в предыдущее состояние Я пишу этот класс, но его не работает в моем контроллере:
if (vm.rejTermsAndCondition) {
for (var i = 0; i < vm.userBaseExtends.length; i++) {
if (vm.userBaseExtends[i].acceptedTermsAndCondition) {
angular.element(document.querySelector('#agree' + i)).attr('ng-class', 'md-primary');
angular.element(document.querySelector('#agree' + i)).removeAttr('ng-class', 'md-default');
angular.element(document.querySelector('#disagree' + i)).attr('ng-class', 'md-default');
} else {
angular.element(document.querySelector('#agree' + i)).addClass('md-default');
angular.element(document.querySelector('#disagree' + i)).removeClass('md-default').addClass('md-warn');
}
}
}