如何使用jquery验证插件仅允许gmail.com作为我电子邮件字段中的域进行验证?
如何使用jquery验证插件仅允许gmail.com作为我电子邮件字段中的域进行验证如何使用jquery验证插件仅允许gmail.com作为我电子邮件字段中的域进行验证?,jquery,jquery-validate,Jquery,Jquery Validate,如何使用jquery验证插件仅允许gmail.com作为我电子邮件字段中的域进行验证 $("#myForm").validate({ rules: { myemail: { required: true, email: true, } } }); 您必须编写一个正则表达式来接受以“gmail.com”结尾的字符串 在此处查看Gmail地址上的regex: 在此处查看如何添加regexp验证: 你可以像下面这样接受gmail,注意我添加了忽略.o
$("#myForm").validate({
rules: {
myemail: {
required: true,
email: true,
}
}
});
您必须编写一个正则表达式来接受以“gmail.com”结尾的字符串 在此处查看Gmail地址上的regex: 在此处查看如何添加regexp验证:
你可以像下面这样接受gmail,注意我添加了忽略.org和.net的功能,你可以继续调整你的正则表达式,使其符合你的要求
\w*\@(?!org)(?!net)[g][m][a][i][l]
根据Sparky的进行编辑:大写字母和三个字母的电子邮件名称@gmail.com
$(document).ready(function () {
jQuery.validator.addMethod('gmail', function (value, element) {
return this.optional(element) || /^[a-z0-9](\.?[a-z0-9]){3,}@[Gg][Mm][Aa][Ii][Ll]\.com$/i.test(value);
}, "not a valid Gmail email address");
$('#myform').validate({
rules: {
field1: {
required: true,
gmail: true
}
},
submitHandler: function (form) { // for demo
alert('valid form');
return false;
}
});
});
从中获取Gmail正则表达式,并在中使用它创建一个名为“Gmail”的新自定义规则
无论是在.addMethod()
方法之前还是之后调用.validate()
,都没有关系
演示:要限制到gmail,必须有一个特定的用例场景,所以通常您只想编写一个正则表达式。请参考此链接,这里有一个Solution@babtech,请奖励回答正确的人。事实上,这不起作用,对不起。我用一个在stackoverflow上已经解决的问题更新了我的答案。有人能为这个添加一把小提琴吗
jQuery.validator.addMethod('gmail', function (value, element) {
return this.optional(element) || /^[a-z0-9](\.?[a-z0-9]){5,}@gmail\.com$/i.test(value);
}, "not a valid Gmail email address");
$("#myForm").validate({
rules: {
myemail: {
required: true,
gmail: true
}
}
});