2016-11-10 3 views
1

Здесь им с помощью Bootstrap валидаций с AngularJs, когда моя форма подавших столбцы сбрасывается, но его показывает все validation..But моя цель его не должен отображать валидацииКак восстановить форму Bootstrap

Bootstrap

<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 вар: $ scope.f1 = {электронной почты: нуль, PSW: нулевой}; – Matheus

+0

не использовать его ошибку отображения в var: –

ответ

0

Я думаю, что вы ищете это:

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

exeactly, но когда я использовал его просто сбросил мои столбцы, не мои проверки, я также использовал $ scope.Auth. $ SetPristine (true); но не работает –

0

Вы можете установить модель на том же уровне, что и тег формы и сделать все другие входы подсвойства. Затем установите модель модели на корневом уровне на пустой объект при нажатии на сброс. Вот 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

Это может быть хорошей идеей использования. Также вы можете скрыть кнопку сброса, которую вы не хотите показывать. –

Смежные вопросы