一、验证固定电话。

一般家用电话号码,如果不带区号就是7位或者8位数字的长度,而区号就是3位或者4位数字和一横。所以,我们在编写验证代码可以通过两条正则表达式进行电话号码验证。

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>电话号码验证</title>
  <script type="text/javascript">
    function checkTel() {
      var obj = document.getElementById("txtTel");
      var value = obj.value;
	  //带区号的固定电话
      var regTel1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/.test(value);
	  //不带区号的固定电话
      var regTel2 = /^(\d{7,8})(-(\d{3,}))?$/.test(value);
      if (value != "") {
        if (!regTel1 && !regTel2) { 
          alert("电话号码输入有误!");
          obj.focus();
          return false;
        }
      }
      else {
        alert("请输入电话号码!");
        return false;
      }
      alert("电话号码输入正确!");
      return true;
    }
  </script>
</head>
<body>
  请输入电话号码:
  <input type="text" id="txtTel" />
  <input type="button" id="btnCheck" value="验证" onclick="return checkTel();" />
</body>
</html>

二、验证手机号。

用正则表达式验证130-139,150-159,180-189号码段的手机号码。

var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; 
if(!myreg.test($("#phone").val())) 
{ 
    alert('请输入有效的手机号码!'); 
    return false; 
} 

当然,也可以两者同时用咯。

Leave a comment