2016-04-14 7 views
0

私は2つのラジオボタンを持っています。ユーザがYESオプションをクリックすると、私はこの値を保存し、チェックされたラジオボタンとしてYESを作成しようとしています。しかし、ユーザーがオプションを変更すると、デフォルト値を編集できません。angular.jsのラジオボタンの値をリセットできません

<body ng-app="mainModule" class=""> 
<div ng-controller="AdminConfigController"> 
    <div class="aui-page-panel aui-page-focused aui-page-focused-small" id = "continueDiscovery"> 
     <div class ="aui-page-panel-inner"> 
      <section class="aui-page-panel-content" > 
       <label>Use User Story template while creating JIRA issue for Product features?</label> 
       <div ng-repeat="eval in getEvaluators()"> 
        <label class="radio" > 
         <input type="radio" ng-model="cell.evaluator" ng-click ="setConfig(cell.evaluator)" name="evaluatorOptions" value="\{{eval.name}}">\{{eval.name}} 
        </label> 
       </div> 
       <hr /> 
       <div>You picked: \{{cell.evaluator}}</div> 
      </section> 
     </div> 
    </div> 
</div> 
</body> 

コントローラーコード::だから

angular.module('mainModule').controller('AdminConfigController', function($scope, $http){ 


    $scope.cell = function() { 
     return $http.get('/getAdminConfig/').success(function(data){ 
      template = data[0].userTemplate; 

     }).error(function(data){ 
      console.log('Error: ' + data) 
     }); 
    }; 

    $scope.cell = { 
     evaluator: "NO" 
    }; 

    $scope.updateCell = function (option) { 
     $scope.cell = { 
      evaluator: option 
     }; 

     console.log($scope.cell) 
    } 
    $scope.evaluators = [{ 
     name: "YES" 
    }, { 
     name: "NO" 
    }]; 
    $scope.getEvaluators = function() { 
     return $scope.evaluators; 
    }; 

    $scope.setConfig = function (option) { 
     console.log("Config Choice:" + option) 

     updateCell(option) 

     $scope.option = option 
     console.log("Entry Choice"+ $scope.option) 

     var data = { 
      userTemplate : $scope.option 
     } 

     $http.delete('/resetConfig/').success(function(data){ 

     }).error(function(data){ 
      console.log('Error: ' + data) 
     }); 

     $http.post('/setAdminConfig/' , data).success(function(data){ 
      console.log(data) 
      /*$scope.productDiscoveryData = data;*/ 
     }).error(function(data){ 
      console.log('Error: ' + data) 
     }); 

    }; 
}); 

あなたは、私が選択したオプションにデフォルト値

$scope.cell = { 
      evaluator: "NO" 
     }; 

を変更する必要があり、コントローラのコードを見ればここに私のコードですユーザー。

+0

は、コンソールにエラーが発生しなければならない、あなたのコード内のいくつかのエラーを持っています。 "scope"への最初の参照は、$ scopeである必要があります。 $ scope.setConfig関数の中でupdateCellを参照しています。これにより、未定義のエラーが発生するため、$ scope.updateCellする必要があります。 –

答えて

0

私はこのコードがあなたに役立つことを願っています。

function AdminConfigController ($scope){ 
 
    $scope.Message = 'Hello Hi !'; 
 
    
 
    $scope.getEvaluators = function() { 
 
     $scope.evaluators = [{name: "YES"}, {name: "NO"}];  
 
     return $scope.evaluators; 
 
    }; 
 
    
 
    $scope.cell = { 
 
     evaluator: "NO" 
 
    }; 
 

 
    $scope.updateCell = function (option) { 
 
     $scope.cell = { 
 
      evaluator: option 
 
     }; 
 

 
     console.log($scope.cell) 
 
    } 
 
    
 
    
 
    $scope.setConfig = function (option) {  
 
     console.log("Config Choice:" + option) 
 

 
     $scope.updateCell(option); 
 

 
     $scope.option = option 
 
     console.log("Entry Choice"+ $scope.option) 
 

 
     var data = { 
 
      userTemplate : $scope.option 
 
     } 
 

 
     
 

 
     
 

 
    }; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script> 
 
<body ng-app="" class=""> 
 
<div ng-controller="AdminConfigController"> {{Message}} 
 
    <div class="aui-page-panel aui-page-focused aui-page-focused-small" id = "continueDiscovery"> 
 
     <div class ="aui-page-panel-inner"> 
 
      <section class="aui-page-panel-content" > 
 
       <label>Use User Story template while creating JIRA issue for Product features?</label> 
 
       <div ng-repeat="eval in getEvaluators()"> {{$scope.cell.evaluator}} 
 
        <label class="radio" > 
 
         <input type="radio" name="evaluatorOptions" ng-model="cell.evaluator" value={{eval.name}}>\{{eval.name}} 
 
         
 
        </label> 
 
       </div> 
 
       <hr /> 
 
       <div>You picked: \{{cell.evaluator}}</div> 
 
      </section> 
 
     </div> 
 
    </div> 
 
</div> 
 
</body>

関連する問題