我有一些输入单选按钮,可以具有以下值:“A”,“B”,“C”,“D”,“E”和“F”
我想计算检查每个值的次数。
我不确定如何在AngularJS中执行此操作,但我尝试使用jQuery,例如$("#test").find("input:checked").val();
,但我只从第一个输入中获取值。
这是我的代码:
HTML
<div ng-controller="QuizController as quiz" class="form-group row">
<div id="test" class="col-md-2 col-md-offset-5">
<form ng-repeat="question in quiz.questions" role="form" class="form-orizontal" novalidate>
<label>
<input type="radio" value="{{question.Value1}}" name="{{question.Index}}">
{{question.Question1}}
</label>
<br />
<label>
<input type="radio" value="{{question.Value2}}" name="{{question.Index}}">
{{question.Question2}}
</label>
<hr>
</form>
<button class="btn btn-default" type="submit">Arată-mi profilul meu</button>
</div>
</div>
JS
(function(){
var app = angular.module('MotivationalApp', []);
app.controller('QuizController', function(){
this.questions = quiz
});
var quiz = [{
Index: 1,
Question1: "I'm a developer",
Value1: "A",
Question2: "I'm a tester",
Value2: "B",
},
{
Index: 2,
Question1: "I'm happy",
Value1: "C",
Question2: "I'm sad",
Value2: "D",
}]
})();
任何人都可以提供一些帮助。非常感谢任何提示
答案 0 :(得分:1)
你可以用另一种方式做到这一点
<input type="radio" ng-model="checkedItems.value1" value="{{question.Value1}}" name="{{question.Index}}">
...
<强> NG-模型=&#34; checkedItems.value1&#34; 强>
在控制器中,你可以循环思考这个对象(checkedItems)并计算检查了多少项
for(var key in $scope.checkedItems){
var value = $scope.checkedItems[key];
...
}