【问题标题】:Jquery Validator does not seem to workJquery Validator 似乎不起作用
【发布时间】:2012-07-16 23:11:37
【问题描述】:

我很确定我遗漏了一些非常明显的东西,但我正在尝试验证我的一个具有所需条件的文本框,并且我正在使用 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>

但是当我在运行时对我的验证器对象进行监视时,我没有看到任何错误。是因为我看错了地方还是我的装订不对?

【问题讨论】:

    标签: javascript jquery jquery-plugins jquery-validate


    【解决方案1】:

    请试试这个或粘贴其余的验证码:

    对于验证插件,您需要有名称 - 在这种情况下为 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>
    

    【讨论】:

    • 尝试将名称更改为 EmailAddress 但我的验证器对象看起来相同...只要确保如果我的验证失败,我的 errorList 属性将有一些值而不是空的正确吗?
    • Hiya @Californicated 看这里 Demo jsfiddle.net/qw87Q 特别为你 :P你可以通过比较来看看你做错了什么 - 也不是这个演示包含一个检查,您可以在一个 texbox 中输入多个电子邮件。
    • @Tats_innits:我刚刚看到您的 Fiddler 代码,您的验证器对象与我的完全一样,除了您拥有的额外功能,但为了让我的工作,我必须添加一些代码,如 @987654326 @ 但是你的工作没有任何调用 valid() 函数..并显示消息..我错过了魔法所在......
    • lol @Californicated 可能是 script src 缺少,即用于验证插件? :)&lt;script type='text/javascript' src="http://ajax.microsoft.com/ajax/jquery.validate/1.6/jquery.validate.min.js"&gt;&lt;/script&gt;
    • 好的,现在我知道是怎么回事了。您的按钮是提交并且它正在执行 POST 而在我的代码按钮中按下正在调用 AJAX GET 并且直到并且除非表单被提交..... Jquery 验证不起作用.....这就是确切的区别是。
    【解决方案2】:

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

    【讨论】:

    • 我将名称更改为 EmailAddress 而不是 Email,因此 ID 和 Name 的值不同,但我的验证器看起来相同......
    猜你喜欢
    • 2023-01-01
    • 2016-01-10
    • 1970-01-01
    • 2021-11-27
    • 2011-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多