2016-11-10 17 views
1

イムをリセットするためにどのようにリセットされますが、そのショーはすべてvalidation..But私の目的は、そのが検証私のフォームが列を提出しているAngularJsとブートストラップ検証を使用してブートストラップこちらのフォーム

を表示するべきではありません

ブートストラップです
<div class="modal" id="modal1"> 
     <div class="modal-dialog"> 
      <div class="modal-content"> 
       <form name="f1" novalidate ng-submit="Save(Auth.emp)"> 
        <div class="modal-body"> 
         <div class="form-horizontal"> 
          <div class="form-group"> 
           <div class="row"> 
            <div class="col-sm-4"> 
             Email 
            </div> 
            <div class="col-sm-8"> 
             <input type="text" name="email" class="form-control" ng-model="Auth.Email" ng-class="Submitted?'ng-dirty':''" required /> 
             <span class="Error" ng-show="(f1.email.$dirty ||Submitted) && f1.email.$error.required">Email REq</span> 
            </div> 
           </div> 
          </div> 

          <div class="form-group"> 
           <div class="row"> 
            <div class="col-sm-4"> 
             Password 
            </div> 
            <div class="col-sm-8"> 
             <input type="text" name="psw" class="form-control" ng-model="Auth.Password" ng-class="Submitted?'ng-dirty':''" required /> 
             <span class="Error" ng-show="(f1.psw.$dirty ||Submitted) && f1.psw.$error.required">Password REq</span> 
            </div> 
           </div> 
          </div> 

         </div> 
        </div> 
        <div class="modal-footer"> 
         <input type="submit" value="{{LoginAction}}" /> 
        </div> 
       </form> 

      </div> 
     </div> 
    </div> 

AngularCode.Js

$scope.Save = function (emp) { 
     if ($scope.LoginAction = "Login") { 
      $scope.Submitted = true; 
      if ($scope.isFormValid == true) { 
       var ss = { 
        Email: $scope.Auth.Email, 
        Password: $scope.Auth.Password, 
       } 
       var xxer = myServices.GetLogin(ss); 
       xxer.then(function (msg) { 
        $scope.msg = msg.data; 
        $('#modal2').modal('show') 
        Reset(); 
       }) 

      } 
     } 
    } 

function Reset() { 
     $scope.Email = ''; 
     $scope.Password = ''; 

    } 
+0

のF1 VARリセット:$ scope.f1 = {Eメール:ヌル、PSW:ヌル}; – Matheus

+0

varでの表示エラーはありません: –

答えて

0

をリセットして、私はあなたがこれを見ていると思う:

function Reset() { 
    $scope.Auth.Email = '' 
    $scope.Auth.Password = ''; 
} 
+0

exeactlyしかし、私は私のバリデーションではなく私の列をリセットして使用しました。私も$ scope.Authを使用しました。$ setPristine(true);しかし動作していない –

0

あなたはformタグと同じレベルでモデルを設定し、他のすべての入力サブプロパティを作ることができます。その後、リセットをクリックすると、ルートレベルのフォームモデルを空のオブジェクトに設定します。ここにはcodepenがあります。

function exampleController($scope) { 
 
    $scope.reset = function() { 
 
    $scope.form = {}; 
 
    }; 
 
} 
 
angular 
 
    .module('app', []) 
 
    .controller('exampleController', exampleController);
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.min.js"></script> 
 

 
<div class="row" ng-app="app" ng-controller="exampleController"> 
 
    <form novalidate ng-model="form"> 
 
    <input ng-model="form.email" type="email" /> 
 
    <input ng-model="form.password" type="password" /> 
 
    </form> 
 
    <button ng-click="reset()">Reset</button> 
 
    <pre>{{form}}</pre> 
 
</div>

+0

これは良いアイデアを使用することができます。また、表示したくない場合は、リセットボタンを非表示にすることもできます。 –

関連する問題