jquery奇怪的reg验证问题

时间:2011-03-31 12:46:58

标签: jquery regex email

我正在进行jquery表单验证,然后我在网上搜索了一些答案,比如验证电子邮件,但奇怪的是没有一个正则表达式工作,基本上我把我的代码放在dom准备好了

function validate_email(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);
};
if (validate_email('gg') {
    alert('papa')
) else {
    alert('mama');
}

它不能在我的Firefox上工作,即如果你发现了问题请帮忙,谢谢

4 个答案:

答案 0 :(得分:1)

在编辑代码进行格式化时,我注意到此行中缺少括号:

if (validate_email('gg') {

这个问题的支撑不正确:

) else {

由于您提到了firefox,如果您还没有,请下载firebug。通过检查firebug控制台中的错误,可以很容易地发现此错误。

答案 1 :(得分:0)

if(validate_email('gg')

你最后错过了结束时间。“

答案 2 :(得分:0)

if (validate_email('gg')) {

您错过了if语句中的结束括号

答案 3 :(得分:0)

这应该有所帮助:http://www.regular-expressions.info/email.html

PS:我从未见过如此长的Regexp用于电子邮件验证: - )