【发布时间】:2014-06-17 11:27:01
【问题描述】:
我正在尝试向我的应用程序添加一些 JavaScript 验证,以检查电子邮件地址的格式是否正确。
这是我用来执行验证检查的代码:
var bValid = true;
allFields.removeClass( "ui-state-error" );
bValid = bValid && checkLength( email, "email", 6, 80 );
bValid = bValid && checkLength( password, "password", 5, 16 );
bValid = bValid && checkRegexp( name, /^[a-z]([0-9a-z_])+$/i, "Username may consist of a-z, 0-9, underscores, begin with a letter." );
// From jquery.validate.js (by joern), contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/
var reg = /^(([^<>()[]\.,;: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,}))$/;
bValid = bValid && checkRegexp(email, reg, "eg. smith@hotmail.com");
bValid = bValid && checkRegexp( password, /^([0-9a-zA-Z])+$/, "Password field only allow : a-z 0-9" );
if ( bValid ) {
//DO ajax call
$( this ).dialog( "close" );
}
我收到了这个错误:
我尝试了许多正则表达式示例,但都被解析器捕获。
【问题讨论】:
-
你缺少引号 var reg = @"YOUR REGEX HERE";
-
@isi,它的 JavaScript,而不是 C#。所以
/.../文字很好(在它前面放置@会导致更多错误):问题很可能如 M42 所示。 -
ok :) 那就不好意思了
-
我不明白为什么服务器会为您的 JavaScript 代码提供错误? JavaScript 不应该在客户端浏览器上运行吗?
标签: c# javascript regex validation email-validation