欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js判断手机号是否正确并返回的实现代码

程序员文章站 2022-06-20 16:40:13
js判断手机号是否正确并返回的代码,具体代码如下所示:

js判断手机号是否正确并返回的代码,具体代码如下所示:

<form method="post" action="login.php" onsubmit="return abc()">
 <input type="text" id="phone" />
 <input type="submit" value="登录"/> </form>
<script type="text/javascript">
function abc() {
 var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
 if(!myreg.test($("#phone").val()))
 {
  alert('请输入有效的手机号码!');
  return false;
 }
 callback();
}
</script>

上述js判断的是130-139,150-159,180-189号段的,如果需要别的号段,自行添加

效果是 点击登录按钮时,如果手机号不对 不做任何跳转

ps:js判断手机号是否正确(正则表达式)

/^13d{9}$/g||/^15[8,9]d{8}$/g

其中 ^ 是以什么开头的意思, $ 是以什么结尾的意思,d 匹配是任意一位数字,后面跟着的{9}是指d重复的次数,相当于dddddddd这个正则表达式匹配的是以13开头和以任意9个数字结尾的字串, / 是正则表达式的分界符,后面跟着的 g 呢,是对指定的字串全局匹配(不加则只匹配第一个),事实上有这个 g 和没有 g 在这里的情况是一样的,test方法返回一个 boolean 值,它指出在被查找的字符串中是否存在模式,如存在则返回 true,否则返回 false。

g表示全局,全部,也就是文本内所有符合条件的,没有这个g的话,只匹配一次。

.test(),是前面那个/^....$/g,也就是正则表达式的一个方法。

下面是一段完整的监测代码,供大家参考:

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title> new document </title>
<meta name="generator" content="editplus">
<meta name="author" content="">
<meta name="keywords" content="">
<meta name="description" content="">
<script language="javascript">
function chk()
{
var tel = document.all("text").value;
if(/^13d{9}$/g.test(tel)||(/^15[8,9]d{8}$/g.test(tel)))
  {
   alert("手机号正确");
   }
else
  {
   alert("手机号错误");
   }
}
</script>
</head>
<body>
<form method="" action="">
手机号:<input type="text" name="text">
 <input type="button" value="检测" onclick="chk()">
</form>
</body>
</html>

验证中国固定电话号码:

((d{3,4})|d{3,4}-|s)?d{8}

以上所述是小编给大家介绍的js判断手机号是否正确并返回,希望对大家有所帮助