现在我的代码有点问题。
我有一个问卷,有单选按钮的答案。它们的值是一个系数。全部记录在Mongodb。
这是我的HTML代码:
<!--réponses-->
<div ng-repeat="r in q.reponses" class="col-lg-12">
<div class="radio" data-placement="bottom-left">
<label class="radio" id="labelRep" for="{{r.coefficient}}">
<input type="radio" ng-change="updateCounter(r.coefficient)" ng-model="reponseQuestionnaire.userAnswers[r.code]" value="{{r.coefficient}}" id="{{r.coefficient}}" class="custom-checkbox"/>
{{r.reponse}}
</label>
</div>
</div>
无论我想要什么:
我想将与勾选答案相对应的系数相乘。
你知道一个功能吗?
我在我的控制器中尝试了这个功能,但没有成功:
$scope.counter = 0;
$scope.updateCounter = function ($event, coefficient, value){
coefficient = parseInt(coefficient, 10);
if (value === 0) {
$scope.counter += coefficient;
}
else{
$scope.counter -= coefficient;
}
提前谢谢。
您真诚的。
请注意我使用的技术是AngularJS。
答案 0 :(得分:0)
ng-change
的第一个参数是您传递给其调用函数而不是$event
的任何内容。
更改此
$scope.updateCounter = function ($event, coefficient, value)
到
$scope.updateCounter = function (coefficient)
并正确调用该函数。
答案 1 :(得分:0)
将代码更改为以下
<强> HTML 强>
ng-change="updateCounter(r.coefficient,value)"`
<强>控制器强>
$scope.updateCounter = function (coefficient, value){
coefficient = parseInt(coefficient, 10);
if (value === 0) {
$scope.counter += coefficient;
}
else{
$scope.counter -= coefficient;
}