我正在尝试向我的应用程序添加一些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" );
}我得到了这个错误:

我尝试过很多regex表达式的例子,但是都被解析器捕获了。
发布于 2014-06-17 19:32:23
转义]内部字符类:
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,}))$/;
// here __^ here __^不确定,但javascript可能也想转义[:
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,}))$/;
// here __^ here __^发布于 2014-06-17 20:57:38
根据Chirag64所写的,看起来服务器可能错误地运行了您的JavaScript代码?第104行可能只是编译器/解释器由于使用错误的语言而出现错误的第一行?您的服务器需要哪种编程语言?
您应该尝试将问题代码复制并粘贴到单独的HTML文件中,并查看当您将其直接加载到浏览器(无服务器)时,它是否会在那里运行。我怀疑它会的。
https://stackoverflow.com/questions/24262542
复制相似问题