JavaScript 手机号码与固定电话合法性验证代码集合

作者:木棉

时间:2026-10-26

浏览:589

本文整理了多种 JavaScript 手机号码与固定电话的合法性验证代码。涵盖前端表单校验逻辑,包括使用正则表达式匹配 13x、15x、153、159 等号段,以及区号与分机号的格式处理。同时提供基于 jQuery 的简化验证方案及后台 C# 代码示例,确保输入数据的准确性与格式规范。

文章目录

JavaScript 手机号与固话验证代码详解

第一段验证代码实现如下:

以上为代码示例部分,

具体代码内容如下:

 
定义函数 Checkreg() 用于校验
{ 
该函数同时验证电话号码和手机号码,兼容 153 和 159 号段
首先判断表单中 phone 和 UserMobile 字段是否均为空,
若两者皆空,则弹出提示框告知用户“电话号码和手机号码至少选填一个阿!”
并将焦点定位至 phone 输入框,
返回 false 终止后续操作。
} 
接着检查 phone 字段是否非空,
若不为空,则获取其值赋给变量 phone,
定义正则表达式 p1 为 /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/,
初始化布尔变量 me 为 false,
使用 p1.test(phone) 进行匹配测试,若匹配成功则将 me 设为 true。
若 me 为 false,即匹配失败,
清空 phone 字段的值,
弹出提示“对不起,您输入的电话号码有错误。区号和电话号码之间请用-分割”,
将焦点移至 phone 输入框,
返回 false。
} 
} 
随后检查 UserMobile 字段是否非空,
若不为空,则获取其值赋给变量 mobile,
定义正则 reg0 为 /^13\d{5,9}$/,
定义正则 reg1 为 /^153\d{4,8}$/,
定义正则 reg2 为 /^159\d{4,8}$/,
定义正则 reg3 为 /^0\d{10,11}$/,
初始化布尔变量 my 为 false,
依次使用 reg0 至 reg3 对 mobile 进行 test 测试,任一匹配成功则将 my 设为 true。
若 reg1 匹配成功,my 置为 true,
若 reg2 匹配成功,my 置为 true,
若 reg3 匹配成功,my 置为 true,
若 my 仍为 false,即所有正则均不匹配,
清空 UserMobile 字段的值,
弹出提示“对不起,您输入的手机或小灵通号码有错误。”
将焦点移至 UserMobile 输入框,
返回 false。
} 
若通过所有校验,则返回 true。
} 
} 

代码逻辑说明如下:


test 方法用于检查字符串中是否存在匹配模式,存在则返回 true,否则返回 false。



正则表达式各部分含义解析:


\d 代表一个数字字符


{7,8} 代表匹配 7 到 8 位数字,用于表示普通电话号码


{3,} 代表匹配 3 位及以上数字,用于表示分机号码


\d{2,3} 代表匹配 2 到 3 位数字,用于表示区号


\d{2,3} 代表匹配 2 到 3 位数字,用于表示国际区号


/^13\d{5,9}$/ 匹配 130 至 139 开头的号码,长度至少 5 位,最多 9 位


/^153\d{4,8}$/ 匹配联通 153 号段,长度至少 4 位,最多 8 位


/^159\d{4,8}$/ 匹配移动 159 号段,长度至少 4 位,最多 8 位



jQuery 简化验证与后台 C# 校验示例

第二段验证代码实现如下:


代码块结束。

具体代码内容如下:

 
使用 jQuery 获取 id 为 varMobilePhone 的元素值赋给 Mobile,
获取 id 为 varPhoneNo 的元素值赋给 Phone,
若 Mobile 和 Phone 均为空字符串,
{ 
则弹出提示“手机和固话,请至少填写一项联系方式!”
将焦点定位至 varMobilePhone 元素,
执行 return 终止函数。
} 
若 Mobile 不为空,
{ 
则调用 isMobil(Mobile) 函数进行校验,
{ 
若校验失败,弹出提示“请输入正确的手机号码!”
将焦点定位至 varMobilePhone 元素,
执行 return 终止函数。
} 
以下是手机号码验证函数的定义:
定义函数 isMobil(s) 用于校验手机号
{ 
定义正则 patrn 为 /(^0{0,1}1[3|4|5|6|7|8|9][0-9]{9}$)/,
若 patrn.exec(s) 返回 null(即不匹配),
{ 
则返回 false。
若通过校验,则返回 true。
后台 C# 代码验证逻辑如下:
若 model.Zip 不为 null,
{ 
则调用 Common.PageValidate.IsValidate 验证 Zip 字段,正则为 ^\\d{6}$,
若验证失败,调用 Common.WebMessage.showMsg 提示“请输入正确邮编”,
并执行 return 终止后续操作。
} 
} 
若 model.PhoneNo 不为 null,
{ 
则调用 Common.PageValidate.IsValidate 验证 PhoneNo 字段,正则为 \\d{3}-\\d{8}|\\d{4}-\\d{7},
{ 
若验证失败,调用 Common.WebMessage.showMsg 提示“请输入正确的电话号码!”
并执行 return 终止后续操作。
} 
} 
若 model.MobilePhone 不为 null,
{ 
则调用 Common.PageValidate.IsValidate 验证 MobilePhone 字段,正则为 ^0{0,1}(13[0-9]|15[3-9]|15[0-2]|18[0-9])[0-9]{8}$,
{ 
若验证失败,调用 Common.WebMessage.showMsg 提示“请输入正确11位有效的手机号码!”
并执行 return 终止后续操作。
} 
} 

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章