我正在使用jquery验证插件。我想保留电子邮件可选,并且只有在我们输入字段时才想验证它。我已尝试过必需:false,在规则中但验证仍在进行中。请帮忙。
$( document ).ready( function () {
$.validator.addMethod("customemail",
function(value, element) {
return /^\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b$/i.test(value);
}
);
$( "#signupForm" ).validate( {
rules: {
email: {
required: false,
customemail: true
},
messages: {
email: {
customemail: "Please enter a valid e-mail address",
},
答案 0 :(得分:0)
更改您的代码,如下所示:
$.validator.addMethod("customemail", function(value, element) {
if ($("#email").val().length == 0) {
return true;
}
else if ($("#email").val().length > 0) {
return /^\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b$/i.test(value);
}
},"Please enter a valid e-mail address");
并从验证规则和customemail中删除required:false:"请输入有效的电子邮件地址"来自消息。
$(" #mail")。val() - 确保id与输入id相同
希望这有帮助