【发布时间】:2013-12-11 18:29:24
【问题描述】:
我尝试使用 jQuery 在 asp.net mvc 中验证如下电子邮件,如下所示
<script type="text/javascript">
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;
}
$(document).ready(function() {
$('#create').click(function() {
var sEmail = $('#UserName').val();
if ($.trim(sEmail).length == 0) {
alert('Please enter valid email address');
e.preventDefault();
}
if (validateEmail(sEmail)) {
alert('Email is valid');
}
else {
alert('Invalid Email Address');
e.preventDefault();
}
});
});
});
</script>
渲染视图时出现编译错误Unexpected character '\' in that regexpression。我该如何解决这个错误?
【问题讨论】:
-
你只是混合功能,请分开,document.ready()和validateEmail()
-
您是否尝试过使用 RegExp 的对象表示法,filter = new RegExp(pattern,modifiers);而不是文字符号 filter = /pattern/
-
我已经将函数和文档分开了。现在我得到了同样的错误。
-
剃刀视图引擎使用了
@符号,这可能会导致一些问题。 stackoverflow.com/questions/4690066/… -
是的。这就是问题所在。我在那个正则表达式中又放了一个@。现在我的问题解决了。非常感谢
标签: jquery asp.net-mvc