用JavaScript写一个验证手机号码前三位是不是中国运营商的,可是实验总是不对
有没有大神指导一下,下面是我代码<inputtype="text"onblur="china(this)"maxlength='11'/><scriptsrc="jque...
有没有大神指导一下,下面是我代码
<input type="text" onblur="china(this)" maxlength='11'/>
<script src="jquery-1.11.0.min.js"></script>
<script type="text/javascript">
function china(v){
var v=v.value.substring(0,3);
var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0]{1})|(15[0-3]{1})|(15[5-9]{1})|(18[0-9]{1}))+\d{8})$/;
if(!myreg.test(v))
{alert('1');}
else{alert('2');}
}
</script>
可是输入什么弹出来都是1,不应该是没检索到的弹出来是不一样的吗,有没有高手告诉我该怎么改或者我该怎么写 展开
<input type="text" onblur="china(this)" maxlength='11'/>
<script src="jquery-1.11.0.min.js"></script>
<script type="text/javascript">
function china(v){
var v=v.value.substring(0,3);
var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0]{1})|(15[0-3]{1})|(15[5-9]{1})|(18[0-9]{1}))+\d{8})$/;
if(!myreg.test(v))
{alert('1');}
else{alert('2');}
}
</script>
可是输入什么弹出来都是1,不应该是没检索到的弹出来是不一样的吗,有没有高手告诉我该怎么改或者我该怎么写 展开
1个回答
2016-08-08
展开全部
这正则表达问题。
1[34578][0-9]{9}
按这个方式去试试看,好久没写了,可能会有些小错误,你测试修正下即可。
1[34578][0-9]{9}
按这个方式去试试看,好久没写了,可能会有些小错误,你测试修正下即可。
更多追问追答
追问
不行,那好像不是正则的问题,因为那写了的是全部运营商有可能号码段前三位
追答
/^(((13[0-9])|(14[0-9])|(17[0])|(15[0-3])|(15[5-9])|(18[0-9]))\d{8})$/;
按你的方式写了一个,前面取了3个数,后面接8个数。
+表示1个或多个,这里不需要用到。 基本格式是这样,测试下。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询