jQuery失去焦点验证

4

我正在使用jQuery验证插件。在点击“提交”按钮后,我的表单就会得到验证。但是我需要onblur验证,例如:如果html文本框/其他元素失去焦点(onblur),那么我需要验证相应的字段。那么我该如何修改下面的代码呢?

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/
libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript" src="jquery.validate.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
$.validator.addMethod("email", function(value, element)
{
return this.optional(element) || /^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/i.test(value);
}, "Please enter a valid email address.");

$.validator.addMethod("username",function(value,element)
{
return this.optional(element) || /^[a-zA-Z0-9._-]{3,16}$/i.test(value);
},"Username are 3-15 characters");

$.validator.addMethod("password",function(value,element)
{
return this.optional(element) || /^[A-Za-z0-9!@#$%^&*()_]{6,16}$/i.test(value);
},"Passwords are 6-16 characters");

// Validate signup form
$("#signup").validate({
rules: {
email: "required email",
username: "required username",
password: "required password",
},
});
});
</script>

提前感谢您的帮助。

1个回答

11
根据文档,您可以通过onfocusout事件在输入框失去焦点时启用验证:
$(".selector").validate({
    onfocusout: false
})

在你的情况下,具体地说:

$("#signup").validate({
    onfocusout: false,    //this setting is what you need
    rules: {
        email: "required email",
        username: "required username",
        password: "required password"
    }
});

这对我来说有点儿。 - Stephan Muller

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接