正则判断错误??
你好,请问下面代码中正则表达式为什么不能用,在正确填写姓名(2到8个字以内的汉字)时为什么总是提示《姓名必须是中文名以及2-8个字以内!》的消息窗口,还有为什么邮箱判断也不灵了? 如果有手机号码和电话号码的正则表达式判断的话,请大家指教。
<script>
var $=document.getElementById
var mag=new Array("用户名","电话号码","电子邮件","手机号码")
var id=new Array("name","phone","mail","mobile")
var RegName=$("name").match(/^[^\u4e00-\u9fa5]{2,8}$/).test(name)
var RegMail=$("mail").match(/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/)
function check(){
for(var i in id){
if($(id[i]).value==""){
alert("请输入"+mag[i]+"!")
$(id[i]).focus()
return false
break
}
}
if(!RegName){
alert("姓名必须是中文名以及2-8个字以内!");
$("name").focus()
return false
}
if(!RegMail){
alert("邮箱地址格式错误或含有非法字符!\n请检查!")
$("mail").focus()
return false
}
}
</script>