对用户输入的字段进行校验,输入的字符只能有0-9 a-z A-Z ( ) - _ 和中文字符,用正则表达式怎么写呢?请各位大侠帮助!
你使用的表达式没问题,可能是allString 有问题。可能不是文本值。你检查下。
Validation.prototype.isValidateChar = function(String,prInfo){
if(String == '' || String == null){
return false;
}
var patrn = /^[\u4E00-\u9FA50-9A-Za-z()-_]+$/;
alert(allString); //打印看是否是文本值
if(!patrn.test(allString)){
this.errors[this.errors.length] = promptInfo;
}
}
var patrn=/^[A-Za-z0-9()_-]+$/;
if(patrn.test(val))
return true;
else
return false;
var patrn=/^([A-Za-z0-9()_-]+[\u4e00-\u9fa5]*[A-Za-z0-9()_-]+)|([\u4e00-\u9fa5]+[A-Za-z0-9()_-]*)$/;
if(patrn.test(value))
return true;
else
return false;
/^[\u4E00-\u9FA50-9a-zA-Z()-_]+$/
中文部分 \u4E00-\u9FA5
[quote]var patrn=/^[A-Za-z0-9()_-\u4e00-\u9fa5]+$/;
if(patrn.test(val))
return true;
else
return false;[/quote]
使用上面的那个看看
[quote]
[quote]引用
var patrn=/^[A-Za-z0-9()_-\u4e00-\u9fa5]+$/;
if(patrn.test(val))
return true;
else
return false;[/quote]
使用上面的那个看看[/quote]
好象 - 这个应该写成 - 。
工程的缓存都清了吗? 修改JS要重启浏览器。
再alert();进行看看到底怎么回事。
/[\u4e00-\u9fa5\w)(-]/
\w直接包含a-zA-Z0-9_