【发布时间】:2016-07-08 02:46:44
【问题描述】:
好的,所以我需要一个带有 Javascript 的电子邮件验证器。所以,我使用了来自StackOverflow answer 的代码。问题涉及在您的电子邮件地址之后放置一个空格。如果我输入example@gmail.com,则不会发生任何错误。如果我输入example@gmail.com,请注意末尾添加的空格,证明电子邮件地址无效。人们会犯错误,添加的空间不应认为电子邮件地址无效。我该如何解决这个问题...
function validateEmail(email) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
function validate() {
$("#result").text("");
var email = $("#email").val();
if (validateEmail(email)) {
$("#result").text(email + " is valid :)");
$("#result").css("color", "green");
} else {
$("#result").text(email + " is not valid :(");
$("#result").css("color", "red");
}
return false;
}
$("form").bind("submit", validate);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<p>Enter an email address:</p>
<input id='email'>
<button type='submit' id='validate'>Validate!</button>
</form>
<h2 id='result'></h2>
【问题讨论】:
-
var email = $("#email").val().trim();可能就足够了。见answer
标签: javascript email