接受错误电子邮件格式的电子邮件格式的javascript验证@abcd.com.gmail,
本文关键字:格式 电子邮件 com gmail @abcd 验证 javascript 错误 | 更新日期: 2023-09-27 18:15:18
可能重复:
在Javascript中验证电子邮件地址?
我必须对电子邮件格式进行验证,我正在使用下面的代码来限制特殊字符。
onkeypress="return AlphaNumericBox(event,this,'@._);"
但现在的问题是,我对确切的格式没有任何正确的验证,例如,它也接受像" @abcd.com.gmail,.. "
这样的文本。对此有任何javascript验证吗?知道吗?
提前谢谢。
function CheckEmail(address){
address=address.replace(/(^'s*)|('s*$)/g, "");
var reg=/(['w._-])+@(['w_-])+('.(['w_-])+){1,2}/;
var matcharr=reg.exec(address);
if(matcharr!=null){
if(matcharr[0].length==address.length){
return true;
}
return false;
}
return false;
}
eg:
var sVal=" t.st@gmail.com.cn ";
var sVal2=" t.st@gmail.com.cn.abc ";
console.log(CheckEmail("name@server.com")); //outpus true
console.log(CheckEmail("@server.com")); //outpus false
我建议您使用此函数。我已经测试过很多次了。
function validateEmail (emailAddress) {
var pattern = new RegExp(/^(("['w-'s]+")|(['w-]+(?:'.['w-]+)*)|("['w-'s]+")(['w-]+(?:'.['w-]+)*))(@((?:['w-]+'.)*'w['w-]{0,66})'.([a-z]{2,6}(?:'.[a-z]{2})?)$)|(@'[?((25[0-5]'.|2[0-4][0-9]'.|1[0-9]{2}'.|[0-9]{1,2}'.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})'.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})']?$)/i);
return pattern.test(emailAddress);
}
现在,您可以轻松验证任何电子邮件地址:
var isValid = validateEmail('name@server.com'); // returns true;
isValid = validateEmail('@server.com'); // returns false;