Jquery 无插件的电子邮件验证
我正在实施电子邮件验证,没有任何插件。为此,我编写了以下验证代码:Jquery 无插件的电子邮件验证,jquery,Jquery,我正在实施电子邮件验证,没有任何插件。为此,我编写了以下验证代码: var email = encodeURIComponent($('#email').val()); if(email==='' | email=== null) { $('#erroremail').show(); } else { var checkemail = email; var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-z
var email = encodeURIComponent($('#email').val());
if(email==='' | email=== null) {
$('#erroremail').show();
} else {
var checkemail = email;
var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
if(filter.test(checkemail)) {
alert('Correct');
return true;
} else {
alert('Not Correct');
return false;
}
}
这里的问题是,我从来没有得到正确的警报。什么不起作用?请看:
您的正则表达式可以处理简单的邮件,因此问题一定是修改$(“#email').val()的encodeURIComponent函数。这就是为什么您不应该重新发明轮子的原因。!值得注意的是,检查您的regex in(或类似的),以确保它按照您希望的方式进行验证。另外,我真的不知道为什么要对要验证的字符串进行
.test()
加密。尝试阅读一些。另一封电子邮件regex,另一只可怜的死猫。你应该在if语句中添加另一个|,并且encodeURIComponent将@转换为%40,因此它永远不会得到验证。您需要使用EncodeuriComponent有什么原因吗?