【问题标题】:JavaScript Validation for Email Id [duplicate]电子邮件 ID 的 JavaScript 验证 [重复]
【发布时间】:2010-10-19 19:40:59
【问题描述】:

复制:

Validate email address in 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 时,它会显示警报。 我应该在我的编码中进行哪些更改,这样它就不会像上面那样显示有效邮件 ID 的警报?谁能给我建议?

【问题讨论】:

    标签: javascript regex


    【解决方案1】:

    有很多例子的好信息:

    http://www.regular-expressions.info/email.html

    顺便说一句:+ 是有效字符,我讨厌无法输入 myemail+somenote@gmail.com 的验证器(因为 gmail 支持这个)

    【讨论】:

      【解决方案2】:

      【讨论】:

        【解决方案3】:

        我会尝试将您的正则表达式更改为:

        [a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-11-12
          • 1970-01-01
          • 2011-07-16
          • 2011-06-21
          • 2013-09-25
          • 2012-05-20
          • 2013-01-18
          • 2013-02-12
          相关资源
          最近更新 更多