2012-07-16 96 views
1

我很确定我失去了一些非常明显的东西,但我想验证我的一个文本框与所需的条件,我正在使用jquery验证器。我的代码看起来像下面:jquery验证器似乎并不工作

var validator = $("#ForgotPassword").validate({ 
       rules: { 
        EmailAddress: { required: true } 
       }, 
       messages: { 
        EmailAddress: { 
         required: "Email address is required." 
        } 
       } 
      }); 

我的DOM是类似下面的东西:

<form id = "ForgotPassword" class="ui-helper-hidden" title="Forgot Password" action="" method="GET"> 
       <p>Please enter the email address you registered with. We’ll send you an email with a password reset link.</p> 
       <div class="inputwrapper _100"> 
        <label for="Email">Email</label> 
        <input type="text" id="EmailAddress" name="Email" data-bind ="value : ForgotPasswordEmailAddress"/> 
        <span id="EmailAddress_Error" class="ui-helper-hidden errorMessage" ></span> 
       </div> 
      </form> 

但是当我把手表我的验证对象上的运行时间,我没有看到任何错误。是因为我看错了位置还是我的绑定不正确?

回答

2

尝试的验证代码这个请或贴休息:

为了验证插件,你需要有名字 - 在这种情况下EmailAddress

希望它可以帮助事业:)

<form id = "ForgotPassword" class="ui-helper-hidden" title="Forgot Password" action="" method="GET"> 
       <p>Please enter the email address you registered with. We’ll send you an email with a password reset link.</p> 
       <div class="inputwrapper _100"> 
        <label for="Email">Email</label> 
        <input type="text" id="EmailAddress" name="EmailAddress" class="EmailAddress" data-bind ="value : ForgotPasswordEmailAddress"/> 
        <span id="EmailAddress_Error" class="ui-helper-hidden errorMessage" ></span> 
       </div> 
      </form> 
+0

尝试将名称更改为EmailAddress,但我的验证器对象看起来相同......只要确保如果我的验证失败,而不是我的errorList属性有一些价值而不是空的是正确的? – TeaLeave 2012-07-16 23:35:23

+1

嗨@加利福尼亚州看到这里**演示** http://jsfiddle.net/qw87Q/ *特别为你*':P'你可以看到你做错了比较这一点 - 也没有这个演示包含检查在哪里您可以在一个texbox中输入多个电子邮件。 – 2012-07-16 23:39:37

+0

@Tats_innits:我刚刚在你的Fiddler代码和你的验证器对象看起来像我的,除了你有额外的功能,但为了我的工作,我必须添加一些代码,如'f(!$(“#ForgotPassword “).valid()) return;'但你的工作没有任何呼吁有效()函数..并显示消息..我错过了魔法所在...... – TeaLeave 2012-07-17 00:13:50

0

我认为问题出在规则和信息中。您应该使用Email作为规则,而不是EmailAddress的消息,因为那是控件上的名称属性

+0

我改名为EmailAddress而不是电子邮件,所以不是ID和名称都有相同的值,但我的验证器看起来一样.... – TeaLeave 2012-07-16 23:36:12