繁体   English   中英

在Angular中提交后无法清除表单字段

[英]Unable to clear form fields after Submit in Angular

我是新手。 提交后,我在清除表单字段中查找了很多答案,但似乎没有任何作用。 这是我的HTML代码:

  <form name="myForm" ng-submit="formSubmit()" class="form-horizontal">

      <div class="form-group">

       <input type="text" class="form-control" ng-model="user.FullName" placeholder="Full Name" required=""/>

      </div>
      <div class="form-group">
      <input type="text" class="form-control" ng-model="user.Address" placeholder="Address" required=""/>
         </div>
     <button type="submit" class="btn btn-primary" style="background-color: purple;">Submit</button>

 </form>

这是我的JS代码:

 var myApp = angular.module('myApp', ['ui.router']); 
 myApp.controller("RegisterCtrl", function ($window,$scope,$http) {
   $scope.user={}
   $scope.formSubmit=function(){
     $http({
        method:'POST',
        url:'myurl',
        data:$scope.user,
        headers:{'Content-Type':'application/json'}
    }).then(function(res){
            console.log(res);
             $scope.myForm.$setPristine(); 
             $scope.myForm.$setPristine(true); 
             $scope.myForm='';      


      })
     }
  });

我已经尝试过setPristine和setUntouched,但是都没有用。

我在您的代码中看不到任何奇怪的东西,我根据您的代码创建了plnkr,下面所做的修改是。 也把plnkr 样品

控制器

var myApp = angular.module('myApp', ['ui.router']); 
 myApp.controller("RegisterCtrl", function ($window,$scope,$http) {
   $scope.user={}
   $scope.formSubmit=function(){
     $http({
        method:'POST',
        url:'myurl',
        data:$scope.user,
        headers:{'Content-Type':'application/json'}
    }).then(function(res){
        $scope.myForm.$setPristine();
        $scope.user = {};
      }, function(rej){ //error});
 }
 });

你应该试试

var myApp = angular.module('myApp', ['ui.router']); 
 myApp.controller("RegisterCtrl", function ($window,$scope,$http) {
   $scope.user={}
   $scope.formSubmit=function(){
     $http({
        method:'POST',
        url:'myurl',
        data:$scope.user,
        headers:{'Content-Type':'application/json'}
    }).then(function(res){
        $scope.$broadcast('show-errors-reset');
        $scope.forms.user = {};
        $scope.forms.userFrom.$setPristine = true;
      }, function(rej){ //error});
 }
 });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM