我有一个小的测验应用程序,我正在转换成角度。它显示一个问题,以及通过单选按钮选择的4个可能答案。您可以转到下一个问题或回到原始问题,并注明您的选择。
当我想回到问题时,我在重新选择单选按钮时遇到了问题。按钮的属性表明我已将其更改为true,但未指示。只有当我回到第一个问题并尝试再次返回时才会正确更新。我假设,因为它无法进一步退回,并且可以再次运行,对按钮进行了一些更新,这就是正在做的事情。
额外空间似乎是堆栈溢出的格式问题,它不在我的实际代码库中。我已经删除它。
非常感谢任何帮助。现在代码很粗糙,因为我把所有东西扔进了控制器。一些结构将在稍后出现。
HTML
<div ng-controller="mainController" class="col-md-5 col-md-offset-5">
<div>
{{quizQuestions}}
</div>
<div ng-repeat="answers in quizAnswers">
<label>{{answers}}</label>
<input class="rad" type="radio" name="answer" ng-click="markAnswer($index)">
</div>
<div>
<label>Change the question</label>
<input type="button" ng-click="decrease()" value="Back">
<input type="button" ng-click="increase()" value="Next">
</div>
</div>
角
$scope.adder = 0;
$scope.answer = [];
$scope.markAnswer = function(index) {
$scope.answer.splice($scope.adder,1,index);
};
$scope.display = function(number) {
$scope.quizQuestions = allQuestions[number].question;
$scope.quizAnswers = allQuestions[number].choices;
};
$scope.decrease = function() {
if($scope.adder === 0) {
} else {
$scope.adder -= 1;
$scope.display($scope.adder);
}
document.getElementsByClassName('rad') [$scope.answer[$scope.adder]].checked = true;
};
$scope.display($scope.adder);
答案 0 :(得分:0)
"rad"
班ng-click
<input class="rad" type="radio" name="answer" ng- click="markAnswer($index)">
您需要取出ng-
和click
对于你的工作,你应该查看ng-model
指令。请注意你的markAnswer()
功能?