我建議您使用此功能。我已經測試過很多次了。
function validateEmail (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);
}
現在,您可以輕鬆驗證任何電子郵件地址:
var isValid = validateEmail('[email protected]'); // returns true;
isValid = validateEmail('@server.com'); // returns false;
見[這裏] [1] [1]:http://stackoverflow.com/questions/46155/validate-email-address-in-javascript – sym3tri
用戶輸入無效或不正確的電子郵件地址的機會遠遠大於通過電子郵件地址格式的規則輸入無效的格式。檢查用戶是否正確輸入電子郵件地址的最佳(即唯一可靠的)解決方案是向該地址發送電子郵件並查看他們是否響應。 – RobG
@ sym3tri:對於評論中的網址,使用下一個標記:'[text](url)'(當然沒有空格),例如[本](http://stackoverflow.com/questions/46155/validate-email-address-in-javascript) – abatishchev