验证手机号码的JS方法

时间:2024-02-23 14:17:36
 
function Checkreg() 
{ 
//验证电话号码手机号码,包含153,159号段 
if (document.form.phone.value=="" && document.form.UserMobile.value==""){ 
alert("电话号码和手机号码至少选填一个阿!"); 
document.form.phone.focus(); 
return false; 
} 
if (document.form.phone.value != ""){ 
var phone=document.form.phone.value; 
var p1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/; 
var me = false; 
if (p1.test(phone))me=true; 
if (!me){ 
document.form.phone.value=\'\'; 
alert(\'对不起,您输入的电话号码有错误。区号和电话号码之间请用-分割\'); 
document.form.phone.focus(); 
return false; 
} 
} 
if (document.form.UserMobile.value != ""){ 
var mobile=document.form.UserMobile.value; 
var reg0 = /^13\d{5,9}$/; 
var reg1 = /^153\d{4,8}$/; 
var reg2 = /^159\d{4,8}$/; 
var reg3 = /^0\d{10,11}$/; 
var my = false; 
if (reg0.test(mobile))my=true; 
if (reg1.test(mobile))my=true; 
if (reg2.test(mobile))my=true; 
if (reg3.test(mobile))my=true; 
if (!my){ 
document.form.UserMobile.value=\'\'; 
alert(\'对不起,您输入的手机或小灵通号码有错误。\'); 
document.form.UserMobile.focus(); 
return false; 
} 
return true; 
} 
} 

 

 

说明
test方法检查在字符串中是否存在一个模式,如果存在则返回 true,否则就返回 false。

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

第二个:

代码如下:
var Mobile = $("#varMobilePhone").val(); 
var Phone = $("#varPhoneNo").val(); 
if (Mobile == ""&&Phone == "") 
{ 
alert("手机和固话,请至少填写一项联系方式!"); 
$("#varMobilePhone").focus(); 
return; 
} 
if(Mobile!="") 
{ 
if(!isMobil(Mobile)) 
{ 
alert("请输入正确的手机号码!"); 
$("#varMobilePhone").focus(); 
return; } 
} 
//手机号码验证信息 
function isMobil(s) 
{ 
var patrn = /(^0{0,1}1[3|4|5|6|7|8|9][0-9]{9}$)/; 
if (!patrn.exec(s)) 
{ 
return false; 
} return true; } 
后台验证如下: 
if (model.Zip != null) 
{ 
if (!Common.PageValidate.IsValidate(model.Zip,"^\\d{6}$")) 
{ Common.WebMessage.showMsg(HttpContext.Current, "请输入正确邮编"); 
return; 
} 
} 
if (model.PhoneNo != null) 
{ 
if (!Common.PageValidate.IsValidate(model.PhoneNo, "\\d{3}-\\d{8}|\\d{4}-\\d{7}")) 
{ 
Common.WebMessage.showMsg(HttpContext.Current, "请输入正确的电话号码!"); 
return; 
} 
} 
if (model.MobilePhone != null) 
{ 
if (!Common.PageValidate.IsValidate(model.MobilePhone, "^0{0,1}(13[0-9]|15[3-9]|15[0-2]|18[0-9])[0-9]{8}$")) 
{ 
Common.WebMessage.showMsg(HttpContext.Current, "请输入正确11位有效的手机号码!"); 
return; 
} 
}