【发布时间】:2015-08-07 18:29:13
【问题描述】:
我正在尝试使用 jQuery 和正则表达式在客户端验证我的电子邮件地址字段,但由于某种原因,javaScript 抱怨正则表达式中的语法错误为
@((?:[\w-]+\.)*\w[\w-]{0,66})
出
/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
jQuery 函数
$('.emailField').change(function () {
var inputVal = $(this).val();
var emailReg = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
if (!emailReg.test(inputVal)) {
$(this).after('<span class="error error-keyup-7">Invalid Email Format.</span>');
}
});
【问题讨论】:
-
奇怪,它在我这边工作正常。
-
你从哪里得到那个正则表达式?它可能不适用于此列表中的大多数域:newtldlist.com
-
@toxic 你的代码在我这边也能正常工作。我发现一件事你需要删除
<span class="error error-keyup-7">Invalid Email Format.</span>before ,否则它会附加到 previous 旁边。Working demo -
我需要添加一些库来在javaScript中添加表达式吗???
-
我在 ASP.NET-MVC 中有部分视图,其中我在 中添加了代码块
标签: javascript jquery email-validation