jquery验证手机号是否正确实例讲解


Posted in Javascript onNovember 17, 2015

如果要做手机号的验证,那么我们需要知道手机号码的号段。
//移动号码归属地支持号段:134 135 136 137 138 139 147 150 151 152 157 158 159 178  182 183 184 187 188

//联通号码归属地支持号段:130 131 132  145 155 156 176  186 

//电信号码归属地支持号段:133 153 177 180 181 189 
//移动运营商:170

移动:
2G号段(GSM):134-139、150、151、152、158-159;
3G号段(TD-SCDMA):157、187、188、147.
联通:
2G号段(GSM):130-132、155-156;
3G号段(WCDMA):185、186.
电信:
2G号段(CDMA):133、153;
3G号段(CDMA2000):180、189.
可以写出一个正则表达式:var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0]{1})|(15[0-3]{1})|(15[5-9]{1})|(18[0-9]{1}))+\d{8})$/; 
<input type="text" id="phone" name="phone" />
首先引入一个JQuery框架:

<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js">
</script>

 校验手机号的函数:

//验证手机号
     function vailPhone(){
       var phone = jQuery("#phone").val();
       var flag = false;
       var message = "";
       var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0]{1})|(15[0-3]{1})|(15[5-9]{1})|(18[0-9]{1}))+\d{8})$/;       
       if(phone == ''){
         message = "手机号码不能为空!";
       }else if(phone.length !=11){
         message = "请输入有效的手机号码!";
       }else if(!myreg.test(phone)){
         message = "请输入有效的手机号码!";
       }else if(checkPhoneIsExist()){
         message = "该手机号码已经被绑定!";
       }else{
           flag = true;
       }
       if(!flag){
      //提示错误效果
         //jQuery("#phoneDiv").removeClass().addClass("ui-form-item has-error");
         //jQuery("#phoneP").html("");
         //jQuery("#phoneP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#phone").focus();
       }else{
            //提示正确效果
         //jQuery("#phoneDiv").removeClass().addClass("ui-form-item has-success");
         //jQuery("#phoneP").html("");
         //jQuery("#phoneP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>该手机号码可用");
       }
       return flag;
     }

发送请求给后台:

//验证手机号是否存在
       function checkPhoneIsExist(){
         var phone = jQuery("#phone").val();
         var flag = true;
         jQuery.ajax(
          { url: "checkPhone?t=" + (new Date()).getTime(),
            data:{phone:phone},
            dataType:"json",
               type:"GET",
               async:false,
               success:function(data) {
               var status = data.status;
               if(status == "0"){
                 flag = false;
               }
             }
        });
        return flag;
       }

java后端进行校验:

@RequestMapping(value = "/checkPhone", method = RequestMethod.GET)
  public void checkPhone(HttpServletRequest request,HttpServletResponse response) {
    
    Map<String, Object> map = new HashMap<String, Object>();
    try {
      String phone = request.getParameter("phone");
      String status = "0";
      //写查询逻辑,查出有的话,那么标记为1,否则标记为0
            //UserCellphoneAuth userCellphoneAuth = userService.findUserCellphoneAuthByPhone(phone);
      //if(userCellphoneAuth!=null){
      //  status = "1";
      //}
      map.put("status", status);
      String data = JSONObject.fromObject(map).toString();      
      response.getWriter().print(data);
      response.getWriter().flush();
      response.getWriter().close();

    } catch (Exception ex) {
      logger.error(ex.getMessage(), ex);
    }
  }

以上就是本文的全部内容,教大家如何进行jquery验证手机号是否正确,利用正则表达式,大家可以动手试一试。

Javascript 相关文章推荐
jquery中dom操作和事件的实例学习-表单验证
Nov 30 Javascript
使用AngularJS和PHP的Laravel实现单页评论的方法
Jun 19 Javascript
javascript实现自动输出文本(打字特效)
Aug 27 Javascript
js导出excel文件的简洁方法(推荐)
Nov 02 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
Apr 20 Javascript
Vue三层嵌套路由的示例代码
May 05 Javascript
layer.open 按钮的点击事件关闭方法
Aug 17 Javascript
Vue用v-for给循环标签自身属性添加属性值的方法
Oct 18 Javascript
对layui数据表格动态cols(字段)动态变化详解
Oct 25 Javascript
JS实现盒子拖拽效果
Feb 06 Javascript
基于JQuery实现页面定时弹出广告
May 08 jQuery
js属性对象的hasOwnProperty方法的使用
Feb 05 Javascript
跟我学习javascript的prototype使用注意事项
Nov 17 #Javascript
js弹出对话框方式小结
Nov 17 #Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
Nov 17 #Javascript
Jquery 垂直多级手风琴菜单附源码下载
Nov 17 #Javascript
JavaScript代码实现禁止右键、禁选择、禁粘贴、禁shift、禁ctrl、禁alt
Nov 17 #Javascript
跟我学习javascript的undefined与null
Nov 17 #Javascript
跟我学习javascript的arguments对象
Nov 16 #Javascript
You might like
php和mysql中uft-8中文编码乱码的几种解决办法
2012/04/19 PHP
ThinkPHP框架安全实现分析
2016/03/14 PHP
基于php编程规范(详解)
2017/08/17 PHP
php微信公众号开发之翻页查询
2018/10/20 PHP
linux mint下安装phpstorm2020包括JDK部分的教程详解
2020/09/17 PHP
兼容Mozilla必须知道的知识。
2007/01/09 Javascript
两种简单实现菜单高亮显示的JS类代码
2010/06/27 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
iScroll.js 使用方法参考
2016/05/16 Javascript
Vue.js实现简单ToDoList 前期准备(一)
2016/12/01 Javascript
jQuery+CSS3实现点赞功能
2017/03/13 Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
2017/03/27 Javascript
基于DOM节点删除之empty和remove的区别(详解)
2017/09/11 Javascript
jQuery实现鼠标响应式透明度渐变动画效果示例
2018/02/13 jQuery
JS页面获取 session 值,作用域和闭包学习笔记
2019/10/16 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
2020/02/12 Javascript
vue setInterval 定时器失效的解决方式
2020/07/30 Javascript
[49:56]VG vs Optic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python将xml xsl文件生成html文件存储示例讲解
2013/12/03 Python
Python中itertools模块用法详解
2014/09/25 Python
Python打包文件夹的方法小结(zip,tar,tar.gz等)
2016/09/18 Python
使用Python读取大文件的方法
2018/02/11 Python
python实现12306抢票及自动邮件发送提醒付款功能
2018/03/08 Python
Python 爬虫之Beautiful Soup模块使用指南
2018/07/05 Python
Python Web编程之WSGI协议简介
2018/07/18 Python
python3 selenium自动化测试 强大的CSS定位方法
2019/08/23 Python
Python进程的通信Queue、Pipe实例分析
2020/03/30 Python
Python turtle库的画笔控制说明
2020/06/28 Python
python 图像增强算法实现详解
2021/01/24 Python
html5实现输入框fixed定位在屏幕最底部兼容性
2020/07/03 HTML / CSS
美体小铺美国官网:The Body Shop美国
2017/11/10 全球购物
什么是岗位职责
2013/11/12 职场文书
博士生入学考试推荐信
2013/11/17 职场文书
大课间体育活动方案
2014/03/12 职场文书
商业用房租赁协议书
2014/10/13 职场文书
幼儿园学前班幼儿评语
2014/12/29 职场文书