我使用以下代码进行电子邮件验证,取自jQuery By Example:
function validateEmail(sEmail) {
var filter = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
if (filter.test(sEmail)) {
return true;
}
else {
return false;
}
}
如果我在输入有效的电子邮件后放了空格,那么它也会给我无效的电子邮件。 我能做些什么?尝试了很多但没有得到正确的结果。
答案 0 :(得分:2)
更改
var sEmail = $('#txtEmail').val();
到
var sEmail = $.trim($('#txtEmail').val());
这应该可以解决问题
答案 1 :(得分:0)
使用此正则表达式而不是您正在使用的正则表达式,这有助于您在输入电子邮件后避免空间问题。
/^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)(\s+)?$/