乘法&复选框值

时间:2017-10-17 14:56:47

标签: javascript angularjs

现在我的代码有点问题。

我有一个问卷,有单选按钮的答案。它们的值是一个系数。全部记录在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。

2 个答案:

答案 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;
    }