电子邮件ID的JavaScript验证
重复:
在JavaScript中验证电子邮件地址?
我想使用JavaScript验证emailid。 我正在使用以下代码:
var emailPat = /^(".*"|[A-Za-z]w*)@([d{1,3}(.d{1,3}){3}]|[A-Za-z]w*(.[A-Za-z]w*)+)$/ ;
var emailid=document.getElementById("<%=txtEmail.ClientID %>").value;
var matchArray = emailid.match(emailPat);
if (txtemail.value!="")
{
if (matchArray == null)
{
alert("Your email address seems to be incorrect. n Please type the proper email address and try again.")
return false
}
}
此代码适用于abc@xyz.com等电子邮件
但是,当我输入有效的邮件如ab.cd@xyz.com或abc@xy-z.com时,它显示警报。 我应该在编码方面做些什么改变,所以它不会显示如上所述的有效邮件ID的警报? 任何人都可以给我建议吗?
有很多例子的很好的信息:
http://www.regular-expressions.info/email.html
顺便说一句:+是有效的字符,我讨厌验证者,我无法进入myemail+somenote@gmail.com(因为Gmail支持这个)
http://regexlib.com/Search.aspx?k=&c=1&m=3&ps=50
用最适合你的方式。
我会尝试将您的正则表达式更改为:
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])
链接地址: http://www.djcxy.com/p/16499.html