JQuery单元素验证不遵守规则

时间:2011-06-30 20:42:35

标签: jquery element validation

我无法解决这个问题 - 我有一个带文本框和按钮的简单表单(不提交)。我希望用户输入电子邮件地址,当他们按下按钮时,它将被添加到页面上显示的地址列表中。我只需要验证用户输入以查看它是否是有效的电子邮件地址。

HTML:

<form id="inviteFriendsForm"> 
    Email address: <input type="text" id="cemail" name="someEmail" value="" /> 
    <input type="button" id="addEmail" value="Add email" />  
</form>

jQuery的:

$("#addEmail").click(function() {
    var isValid = $("#inviteFriendsForm").validate({
       rules: { cemail: { required: true, email: true } }
    } ).element("#cemail");

    if(isValid) {
        alert($("#cemail").val());
    }
    else {
        alert('Wrong email');
    }
});

我遇到的问题是isValid变量始终为真。请注意,警报不是因为我会使用它来向用户指示错误,代码明智我只需要知道是否应该继续处理用户输入。

仅供记录,我正在使用jQuery Validation Plugin 1.8.0

非常感谢,

安东尼

1 个答案:

答案 0 :(得分:0)

  1. 将按钮设为提交按钮。
  2. 使用validate的submitHandler属性更改表单验证时发生的情况。
  3. 让验证的错误显示做它的事情。如果您需要警报而不是错误标签,则可以更改错误的显示方式(请查看文档)。