翻了几篇博客,说下面的正则表达式是验证手机号和固话的
/^(13[0-9]{9}$|14[0-9]{9}|15[0-9]{9}$|18[0-9]{9})$|(^(0\d{10})|^(0\d{2}-\d{8}))$/
自己便拿来验证了下
出现了一个小问题,手机号都没问题,11位数,而测试固话时出现了问题,固话因为区号的原因,会出现“—”符号的位置不一样,比如有的区号只有三位,而有的区号有四位数,导致后面
^(0\d{2}-\d{8})
有问题,写 2的话,验证4位数的区号不通过;写 3的话,验证3位数的区号不通过,目前原因还在找
附上一个demo
function Verify() {
// /^1[3456789]\d{9}$/ 这个是验证手机号的
var phone = $("#phone").val();
if(!(/^(13[0-9]{9}$|14[0-9]{9}|15[0-9]{9}$|18[0-9]{9})$|(^(0\d{10})|^(0\d{3}-\d{8}))$/.test(phone))){
//可以换成项目的弹框,项目的弹框比这个好看
alert("手机号码有误,请重填");
$("#phone").val('');
return false;
}
}