2

这是电子邮件验证的代码,在这里我怀疑正则表达式是否正确..还有一个在这里解释每个语句 e.which 在这里代表什么......就像我想知道每个语句......

     function mailonly(e){
        var code;
        if (!e) var e = window.event;
        if (e.keyCode) code = e.keyCode;
        else if (e.which) code = e.which;
        var character = String.fromCharCode(code);
            var AllowRegex = /^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
            if (AllowRegex.test(character)) return true;
            return false;}
4

1 回答 1

1

不要使用正则表达式来验证 emailid

ThisIsAnInvalidEmailId@invalid.com将与该正则表达式匹配,但该电子邮件 ID 是否有效。

您的正则表达式应该是^[^@]+@[^@]+$然后检查它是否有效发送邮件到该电子邮件地址..如果您收到任何回复电子邮件是有效的!

emailid 也可以包含 ^,$,!,~,-,(,) 和许多其他字符。即使空格也是电子邮件中的有效字符。


如果您想防止用户拼写错误,您可以使用mailcheck.js

在此处输入图像描述

于 2013-11-08T05:28:08.787 回答