angularjs得分计数器不工作

时间:2015-09-25 03:46:47

标签: javascript angularjs counter

请看一下。

http://plnkr.co/edit/i4B0Q2ZGiuMlogvwujpg?p=preview

<input type="radio" name="op_0" ng-value="true" ng-model="n1"> True
<input type="radio" name="op_0" ng-value="false" ng-model="n2"> False
<input type="radio" name="op_0" ng-value="true" ng-model="n3"> True
<input type="radio" name="op_0" ng-value="false" ng-model="n4"> False

为什么只需点击一下即可选择两个单选按钮? 为什么分数值不增加或减少?

1 个答案:

答案 0 :(得分:1)

要将所有单选按钮放在同一组中,它们都应具有相同的名称。它的价值应该是不同的。如果他们没有相同的名字,选择一个不会导致其他人取消选择。

app.controller('aCtrl', function($scope) {

  $scope.s = 0;

  $scope.updateScore = function(val){
    if(val == 'true'){
      $scope.s += 1;
    }
    if(val == 'false'){
      $scope.s += -0.5;
    }
  }

});

 <div class="col-md-5 col-xs-8">
        <input type="radio" ng-click="updateScore('true')" name="op_0" ng-value="true" ng-model="n1"> True
        <input type="radio" ng-click="updateScore('false')" name="op_0" ng-value="false" ng-model="n2"> False
        <input type="radio" ng-click="updateScore('true')" name="op_0" ng-value="true" ng-model="n3"> True
        <input type="radio" ng-click="updateScore('false')" name="op_0" ng-value="false" ng-model="n4"> False
      </div>