Javascript 重置AngularJS中不工作的单选按钮

Javascript 重置AngularJS中不工作的单选按钮,javascript,html,angularjs,Javascript,Html,Angularjs,我正在做测验。但是,重置按钮在我的测验中不起作用。有人能帮我吗 英国的首都是什么 伦敦 布里斯班 问题2:澳大利亚的首都是什么 堪培拉 悉尼 点击我 重置 //模块声明 var-app=angular.module('myApp',[]); //控制器 应用程序控制器('myCtrl',函数($scope){ $scope.quick={1:,2::}; $scope.show=函数(){ 警惕(“完成”); } $scope.reset=函数(){ 角度.forEach($scop

我正在做测验。但是,重置按钮在我的测验中不起作用。有人能帮我吗


英国的首都是什么

  • 伦敦
  • 布里斯班
问题2:澳大利亚的首都是什么

  • 堪培拉
  • 悉尼
点击我 重置 //模块声明 var-app=angular.module('myApp',[]); //控制器 应用程序控制器('myCtrl',函数($scope){ $scope.quick={1:,2::}; $scope.show=函数(){ 警惕(“完成”); } $scope.reset=函数(){ 角度.forEach($scope.quick,function(val,key){ val=”“; val.checked=false; }); } });
您正在$scope.quiz1而不是$scope上循环。请像这样更改重置功能。那就行了

$scope.reset = function () {
    angular.forEach($scope.quiz, function (val, key) {
        $scope.quiz[key] = "";
    });
}

英国的首都是什么

  • 伦敦
  • 布里斯班
问题2:澳大利亚的首都是什么

  • 堪培拉
  • 悉尼
点击我 重置 //模块声明 var-app=angular.module('myApp',[]); //控制器 应用程序控制器('myCtrl',函数($scope){ $scope.quick={ 一个:“, 二:" }; $scope.show=函数(){ 警惕(“完成”); } $scope.reset=函数(){ angular.forEach($scope.quick,function(val,key){ $scope.quick[key]=“”; }); } });
试试这个 得到的结果是,您直接尝试删除val,但不将其分配回json,这应该在每个方法中完成

    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.min.js"></script>
    </head>
    <body ng-app="myApp" ng-controller="myCtrl"> 
    <p>Q1: What is capital of England? </p>
    <ul>
    	<li><input type="radio" name="q1" value="1" ng-model="quiz.one"> London</li>
    	<li><input type="radio" name="q1" value="2" ng-model="quiz.one"> Brisbane</li>
    </ul>
    <p>Q2: What is capital of Austrailia? </p>
    <ul>
    	<li><input type="radio" name="q2" value="1" ng-model="quiz.two"> Canberra</li>
    	<li><input type="radio" name="q2" value="2" ng-model="quiz.two"> Sydney</li>
    </ul>
    <button ng-click="show()">Click Me</button>
    <button ng-click="reset()">Reset</button>

    <script>
    //module declaration
    var app = angular.module('myApp',[]);

    //controller
    app.controller('myCtrl',function($scope){
    $scope.quiz = {one:"", two:""};
    $scope.show = function(){
    	alert("Done");
    }
    $scope.reset = function(){
    	angular.forEach($scope.quiz,function(val, key){
    		$scope.quiz[key] = "";

    	});
    }
    });

    </script> 
    </body> 
    </html>


英国的首都是什么

  • 伦敦
  • 布里斯班
问题2:澳大利亚的首都是什么

  • 堪培拉
  • 悉尼
点击我 重置 //模块声明 var-app=angular.module('myApp',[]); //控制器 应用程序控制器('myCtrl',函数($scope){ $scope.quick={1:,2::}; $scope.show=函数(){ 警惕(“完成”); } $scope.reset=函数(){ 角度.forEach($scope.quick,function(val,key){ $scope.quick[key]=“”; }); } });
尝试使用ng复选框,您可以完成此操作

$scope.quick[key]=“”,见下面的评论