您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop收货地址199/198号段提示手机号格式不正确!
阿兰2025-02-25Ecshop商城教程已有人查阅
导读今天有朋友问为什么ecshop在提交收货地址的时候19开始的手机号提示“手机号码不是合法号码”或者“提示手机号格式不正确”!但是提交13,18,15开头的手机号又没问题。
原代码
根目录/js/utils.js
Utils.isEmail = function( email )
{
var reg1 = /([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)/;
return reg1.test( email );
}
Utils.isMobile = function( mobile )
{
var reg1 = /^(0|86|17951)?(13[0-9]|15[012356789]|15[0-9]|17[0-9]|17[0-9]|18[0-9]|14[57])[0-9]{8}$/;
return reg1.test( mobile );
}
Utils.isTel = function ( tel )
{
var reg = /^[\d|\-|\s|\_]+$/; //只允许使用数字-空格等
return reg.test( tel );
}
为了方便大家看懂,我对这三段代码进行解释;
这段代码定义了三个函数,分别用于验证电子邮件地址(isEmail)、手机号码(isMobile)和电话号码(isTel)的格式是否正确。每个函数都使用正则表达式来测试输入的字符串是否符合特定的格式要求。下面是对每个函数的详细解释:
1. Utils.isEmail(email)
这个函数用于验证电子邮件地址的格式。它接受一个字符串参数email,并使用正则表达式reg1来测试这个字符串是否符合电子邮件地址的常见格式。
正则表达式解释:
([\w-\.]+): 匹配一个或多个字母数字字符(包括下划线)、点(.)。这通常是电子邮件的用户名部分。
@: 匹配@符号。((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)匹配域名部分,可以是IP地址格式(例如‘[192.168.1.1]‘),或者是常规的域名格式(例如‘example.com‘)。?‘([a?zA?Z]2,4∣[0?9]1,3)(?): 匹配顶级域名(TLD),可以是2到4个字母,或者是1到3个数字,可选地以]`结尾(用于匹配IP地址格式的电子邮件)。
如果输入的email字符串符合这个正则表达式,函数返回true,否则返回false。
2. Utils.isMobile(mobile)
这个函数用于验证手机号码的格式。它接受一个字符串参数mobile,并使用正则表达式reg1来测试这个字符串是否符合中国大陆手机号码的格式。
正则表达式解释:
^(0|86|17951)?: 可选的国际区号,包括0(国内拨打时通常省略的前缀)、86(中国的国际电话区号)、17951(IP电话卡前缀)。
(13[0-9]|15[012356789]|15[0-9]|17[0-9]|17[0-9]|18[0-9]|14[57]): 手机号码的前三位,代表不同的运营商和号段。注意这里有一个重复项15[0-9]和17[0-9],可能是编写时的错误。
[0-9]{8}$: 剩余的8位数字。
如果输入的mobile字符串符合这个正则表达式,函数返回true,否则返回false。
3. Utils.isTel(tel)
这个函数用于验证电话号码的格式,但它允许较为宽泛的字符,包括数字、短横线(-)、空格和下划线(_)。它接受一个字符串参数tel,并使用正则表达式reg来测试。
正则表达式解释:
^[\d|\-|\s|\_]+$: 从字符串开始到结束,只允许数字(\d)、短横线(-)、空格(\s)和下划线(_)这些字符,且至少有一个这样的字符。
如果输入的tel字符串符合这个正则表达式,函数返回true,否则返回false。这个函数对于验证包含分隔符的电话号码很有用,但对于严格格式的国际电话号码验证可能不够精确。
解决方法
通过上述的解释大家也能看到2.Utils.isMobile(mobile)函数在限制手机号段的时候没有新增到199类号段所以提示手机号码不正确,下面的修改后的代码。
Utils.isEmail = function( email )
{
var reg1 = /([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)/;
return reg1.test( email );
}
Utils.isMobile = function( mobile )
{
var reg1 = /^(0|86|17951)?(13[0-9]|15[012356789]|15[0-9]|17[0-9]|19[0-9]|18[0-9]|14[57])[0-9]{8}$/; //加了19[0-9]号段
return reg1.test( mobile );
}
Utils.isTel = function ( tel )
{
var reg = /^[\d|\-|\s|\_]+$/; //只允许使用数字-空格等
return reg.test( tel );
}
修改完成之后后台更新缓存,清理浏览器缓存即可,JS文件不清理浏览器缓存是不行的。
本文标签:
很赞哦! ()
图文教程
ecshop的smarty基本语法介绍
模板制作比较核心的其实就是变量的使用,因为这些就是数据的根本,想从数据库里获取数据并显示在界面就必须使用smarty来展示,下面是关于smarty的介绍和使用。
ecshop后台二次开发教程示例
ECSHOP后台开发模块步骤一、建数据库二、添加到后台导航栏并配置相关语言包三、权限配置四、添加增删查改五、增加其他功能( ,搜索(暂时调不出来页面),排序,转移,AJAX)
ecshop后台通过ajax搜索
ecshop的搜索其实是功能十分强大的,但是ecshop搜索功能前台和后台还不大一样,前台主要是通过get方式,提交的url进行分页,而在ecshop的后台,则是接受表单的搜索条件,然后通过js发布到ajax
ecshop模板标签总结,ecshop模板标签手册
先从index.php主页开始页面关键字 {$keywords }页面标题 {$page_title}产品分类父分类列表 {foreach fro
相关源码
-
(自适应)餐具英文外贸生活用品带下载功能网站模板免费下载为餐具及生活用品外贸企业打造的响应式网站模板,基于PbootCMS内核开发。突出产品展示与多语言支持特性,通过自适应设计确保更好客户在手机、平板、电脑等设备上获得一致浏览体验。查看源码 -
(自适应响应式)房产合同知识产权企业管理pbootcms模板下载本模板基于PbootCMS系统开发,为知识产权服务、法律咨询及企业合同管理等行业设计。采用严谨专业的布局风格,突出法律文书与知识产权服务行业特色,适合展示各类法律服务和知识产权相关内容。查看源码 -
(自适应响应式)门窗定制门业带视频功能pbootcms模板下载本模板采用PbootCMS内核开发,为门窗制造、定制安装企业打造,通过可视化后台管理系统快速构建品牌官网。自适应设计确保在手机、平板、电脑等设备上均能获得优质浏览体验查看源码 -
(自适应响应式)教育培训机构集团网站pbootcms源码下载本模板基于PbootCMS系统开发,为教育培训机构设计,特别适合展示课程体系、师资团队和教学成果。采用响应式技术,确保在各类设备上都能提供良好的浏览体验。查看源码 -
(自适应)蓄电池能源智能数码科技产品pbootcms模板源码下载本款基于PbootCMS开发的网站模板为蓄电池及能源科技企业设计,特别适合锂电池、储能系统、新能源电池等产品的展示与推广。查看源码 -
(自适应)绿色农业机械设备农场网站源码下载为现代农业机械领域打造的响应式网站模板,采用PbootCMS内核开发,数据实时同步后台管理。通过简洁大气的视觉设计,有效展示农机产品技术参数与应用场景,帮助客户快速建立专业数字化形象。查看源码
| 分享笔记 (共有 篇笔记) |
