站长论坛

标题: JS验证电话号码 [打印本页]

作者: tznktg    时间: 2007-10-6 11:25
标题: JS验证电话号码
JAVAscript函数
在这里只能入数字和()-+四个字符,这样对输入的电话号码起到了一定的检查.
请输入电话号码:

在<head>...</head>之间加入如下代码:
<script LANGUAGE="javascript">
<!--
function check()
{
if (document.form.tell.value==""){
alert("??入???瘁!");
document.form.tell.focus();
return false;
}
else{
var Letters = "0123456789()+-";
for (i=0; i< document.form.tell.value.length; i++){
var CheckChar = document.form.tell.value.charAt(i);
if (Letters.indexOf(CheckChar) == -1){
alert("???瘁格式不正催!");
document.form.tell.focus();
return false;
}
}
}
}
//-->
</script>
在<body>...</body>之间的表单.
<form method="POST" name=form action="" onSubmit="return check();">
<p align="center">
请输入电话号码:<input type="text" name="tell" size="20">
<input type="submit" value="提交" name="B1"></p>
</form>
作者: tznktg    时间: 2007-10-6 11:25
  1. function Checkreg()
  2. {
  3. //验证电话号码手机号码,包含153,159号段
  4.     if (document.form.phone.value=="" && document.form.UserMobile.value==""){
  5.         alert("电话号码和手机号码至少选填一个阿!");
  6.         document.form.phone.focus();
  7.         return false;
  8.         }
  9.     if (document.form.phone.value != ""){
  10.         var phone=document.form.phone.value;
  11.         var p1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/;
  12.         var me = false;
  13.         if (p1.test(phone))me=true;
  14.         if (!me){
  15.             document.form.phone.value='';
  16.             alert('对不起,您输入的电话号码有错误。区号和电话号码之间请用-分割');
  17.             document.form.phone.focus();
  18.             return false;
  19.         }
  20.     }
  21.     if (document.form.UserMobile.value != ""){
  22.         var mobile=document.form.UserMobile.value;
  23.         var reg0 = /^13\d{5,9}$/;
  24.         var reg1 = /^153\d{4,8}$/;
  25.         var reg2 = /^159\d{4,8}$/;
  26.         var reg3 = /^0\d{10,11}$/;
  27.         var my = false;
  28.         if (reg0.test(mobile))my=true;
  29.         if (reg1.test(mobile))my=true;
  30.         if (reg2.test(mobile))my=true;
  31.         if (reg3.test(mobile))my=true;
  32.         if (!my){
  33.             document.form.UserMobile.value='';
  34.             alert('对不起,您输入的手机或小灵通号码有错误。');
  35.             document.form.UserMobile.focus();
  36.             return false;
  37.         }
  38.         return true;
  39.     }
  40. }
  41. 说明
  42. test方法检查在字符串中是否存在一个模式,如果存在则返回 true,否则就返回 false。

  43. 正则表达式部分:
  44. \d 代表一个数字
  45. {7,8} 代表7-8位数字(表示电话号码)
  46. {3,} 代表分机号码
  47. d{2,3} 代表区号
  48. \+]\d{2,3} 代表国际区号
  49. ^13\d{5,9}$/ //130?139。至少5位,最多9位
  50. /^153\d{4,8}$/ //联通153。至少4位,最多8位
  51. /^159\d{4,8}$/ //移动159。至少4位,最多8位
复制代码





欢迎光临 站长论坛 (http://tzlink.com/bbs/) Powered by Discuz! X3.2