2016-08-15 102 views
0

我试图在模式中使用jQuery验证,但这不起作用,或者不会调用操作来验证输入。jquery使用流星模式进行验证

这是我从进入模式,这都成模板名称=“modalregistro”

<form id="formregister" class="p-t-15 formregister" role="form" method="get"> 
    <div class="row"> 
     <div class="col-sm-12"> 
      <div class="form-group form-group-default"> 
       <label>Correo electrónico</label> 
       <input type="text" name="uname" placeholder="[email protected]" class="form-control" required> 
      </div> 
     </div> 
    </div> 
    <div class="row"> 
     <div class="col-sm-6"> 
      <div class="form-group form-group-default"> 
       <label>Contraseña</label> 
       <input type="password" id="setPassword" name="user[password]" placeholder="Minimo de 8 Carácteres" class="form-control" required> 
      </div> 
     </div> 
     <div class="col-sm-6"> 
      <div class="form-group form-group-default"> 
       <label>Validar contraseña</label> 
       <input type="password" name="user[password_confirmation]" placeholder="Minimo de 8 Carácteres" class="form-control" required> 
      </div> 
     </div> 
    </div> 
    <div class="row m-t-10"> 
     <div class="col-md-6"> 
      <p>Estoy de acuerdo con <a href="#" class="text-info small"><strong>TP Landings</strong>, terminos y condiciones de uso</a> y su <a href="#" class="text-info small">Privacidad</a>.</p> 
     </div> 
     <div class="col-md-6 text-right"> 
      <a href="#" class="text-info small">¿Ayuda? Contactar el soporte</a> 
     </div> 
    </div> 
    <hr class="b-dashed b-grey"> 
    <div class="row"> 
     <div class="col-sm-6 col-xs-12"> 
      <button data-dismiss="modal" class="btn btn-default btn-lg btn-large btn-block text-uppercase">Cancelar</button> 
     </div> 
     <div class="col-sm-6 col-xs-12"> 
      <button id="btnHecho" class="text-uppercase btn btn-primary btn-lg btn-large btn-block btn-cons show-notification" type="submit">Crear cuenta</button> 
     </div> 
    </div> 
</form> 

我把这个模板到我的网站

<template name="website"> 
    <section class="website"> 
     {{> navbarWebsite}} 
    </section> 

    {{> modallogin}} 
    {{> modalregistro}} 
</template> 

的布局,这是我的呈现

Template.website.rendered = function(){ 

    $(function(){ 
     $('.formregister').validate() 
    }); 

    jQuery('.formregister').validate({ 
     rules: { 
      "user[password]": { 
       minlength: 2 
      }, 
      "user[password_confirmation]": { 
       minlength: 2, 
       equalTo : "#setPassword" 
      } 
     } 
    }); 
} 

jQuery验证和网站。也提出了但我不知道w hy验证它。

jquery.validate.js template.modalregistro.js

回答

1

您在同一表格上调用.validate()方法两次......

$(function(){ 
    $('.formregister').validate() 
}); 

jQuery('.formregister').validate({ 
    rules: { ... 

.validate()是初始化方法,并一度被称为在特定form,就不能再次调用。所有后续调用将被忽略。由于您的规则是从第二个实例声明的,因此它们将被忽略。


编辑

也许你不知道,你正在使用class选择,当你form只有一个id

form只包含一个id

<form id="formregister" ... 

但是你选择的目标是class="formregister"

$('.formregister') 

要选择id="formregister",你需要使用一个id选择:

$('#formregister') 
+0

谢谢,我没有看见!但仍然不工作:( – ccdiego5

+0

@ ccdiego5,看不到是什么?您发布的代码显示'.validate()'两次。 – Sparky

+0

是的,我看到知道!并且变得更糟,但是不起作用 – ccdiego5