基于域查找的Javascript中的电子邮件验证

时间:2012-03-05 10:01:32

标签: javascript regex

我知道这个问题已多次发布。但我仍想再询问一下。我使用了一个函数

function validateEmail(elementValue){  
       var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,3}$/;  
         return emailPattern.test(elementValue);  
    }   

工作正常。但我的问题是它允许123@123.com作为有效的电子邮件。所以我想检查域也像checkdnsrr()在PHP中。我可以用javascript做到吗?我也想检查有效域名。

3 个答案:

答案 0 :(得分:1)

看起来除了使用AJAX之外没有其他解决方案。

您使用JS在服务器上发出请求,服务器使用checkdnsrr()检查DNS,并且它会响应您想要的任何内容,它将允许您的JS根据此处理验证。

答案 1 :(得分:0)

你为什么不在PHP中这样做?这比进行ajax调用要容易得多。

答案 2 :(得分:0)

与您提供的相同代码

function validateEmail(elementValue){  
   var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,3}$/;  
     return emailPattern.test(elementValue);  
} 

以这种方式更改它,它将验证123@123.com检查域名不能是@ 123.com

function validateEmail(elementValue){  
   var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z-]+\.[a-zA-Z]{2,3}$/;  
     return emailPattern.test(elementValue);  
}