2015-12-03 33 views
0

我需要使用JS驗證這封電子郵件,我需要檢查@sign和句點。這是我現在擁有的,但是如果我運行所有代碼,它不會驗證@符號。如何驗證JS中的電子郵件?

if(email.value == "" || !isNaN(email.value)) { 
var re = /^(([^<>()[\]\.,;:\[email protected]\"]+(\.[^<>()[\]\.,;:\[email protected]\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\[email protected]\"]+\.)+[^<>()[\]\.,;:\[email protected]\"]{2,})$/i; 
     //something is wrong. 
     isValid = false; 
     txtFeedback.innerHTML += "<p>Please enter a valid email address.</p>"; 
     email.nextElementSibling.innerHTML = "Please enter a email address."; 
    } 
+0

視圖這一個http://stackoverflow.com/questions/46155/validate-email-address-in-javascript – VahagnNikoghosian

+0

http://davidcel.is/blog/2012/09/06/stop-validating-email-addresses-with-regex/ – Bergi

回答

0

考慮這個regex

var regex = /^([\w-+]+(?:\.[\w-+]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,14}(?:\.[a-z]{2})?)$/i; 
regex.test(email); // true if valid email 
+1

無效的電子郵件地址(對於超過6個字符的TLD)失敗。 – robertklep

+0

您能否向我提供失敗的樣品? –

+0

['registrars @ nic.amsterdam'](http://nic.amsterdam/#newsletter)。還有名稱中帶有'+'的地址(這也是有效的)。 – robertklep