2016-11-25 2 views
0

Здесь я применил проверки формы angularjs для формы, которая находится в модели начальной загрузки. Но в чем проблема: сообщения об ошибках и данные в текстовых полях остаются то же самое, даже после закрытия model`Как сбросить форму валидации углов после закрытия бутстрапа modal

<div class="modal fade loginpopup index" id="login-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" > 
     <div class="modal-dialog login-form animated"> 
      <div class="modal-content"> 
        <div class="modal-header"> 
         <button type="button" class="close" data-dismiss="modal">×</button> 
       </div> 
       <div class="modal-body"> 
         <form name="loginform"> 
          <div id="my-tab-content" class="tab-content"> 
           <div class="tab-pane active" id="login" name="login"> 
            <div class="form-group" > 
             <input type="email" id="userName" name="userName" class="form-control" ng-model="email" placeholder="UserName" required > 
             <span class="has-error" ng-show="loginform.userName.$touched && loginform.userName.$invalid" class="font-ten"> 
               <span class="has-error" ng-show="loginform.userName.$error.email" class="font-ten">Invalid email address.</span> 
               <span class="has-error" ng-show="loginform.userName.$error.required" class="font-ten">UserName is required..</span> 


              </span> 
            </div> 
            <div class="form-group"> 
             <input type="password" id="psd" name="psd" class="form-control" placeholder="Password" required > 
            </div> 
            <div class="form-group text-center" > 
              <button class="btn btn3d text-center imm" type="submit" > Log In  </button> 
            </div> 
            <div class="form-group login-index" style="margin-bottom:0px;padding-top:0px !important"> 
              <input type="checkbox" name="checkbox" id="Option"> 
              <label class="Option" for="Option"> Rememer Me </label> 
              <a href="/#forgetpassword" data-toggle="tab" id="forgotpsw">Forgot Password?</a> 
             </div> 
           </div> 

           <div class="tab-pane" id="forgetpassword"> 
            <div class="form-group " > 
             <input type="email" id = "emailId" name="emailId" required class="form-control" placeholder="Email Address" > 
            </div> 
            <div class="form-actions text-center"> 
             <button type="button" class="btn btn3d imm" >Submit </button> 
            </div> 


          </div> 
          </div> 
         </form> 
       </div> 
      </div> 
     </div> 
    </div> 
+0

Опорожните вашу модель и установите форму в нетронутое состояние с помощью метода setPristine(). – superUser

+0

может у вас запросить код – Venky559

+0

Почему вы не используете ng-model для хранения входных значений? – superUser

ответ

1

закрыв вашу самозагрузку модальности, сделайте следующее:

loginform.setPristine(); 

Это установит форму первозданного состояние т.е. он будет очистите все валидации, применяемые к форме, и сделайте это как нетронутое. Но перед этим необходимо очистить входные значения отдельно.

+0

не работает – Venky559

+0

Он должен работать. Как вы получаете «loginForm» в своем контроллере? – superUser

+0

$ scope.reset = function() { loginform.setPristine(); } Я написал как dis в контроллере – Venky559

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