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 相关文章推荐
用js重建星际争霸
Dec 22 Javascript
js 鼠标点击事件及其它捕获
Jun 04 Javascript
jquery异步循环获取功能实现代码
Sep 19 Javascript
jQuery Clone Bug解决代码
Dec 22 Javascript
js动态生成Html元素实现Post操作(createElement)
Sep 14 Javascript
详解 javascript中offsetleft属性的用法
Nov 11 Javascript
javascript实现C语言经典程序题
Nov 29 Javascript
Angularjs实现mvvm式的选项卡示例代码
Sep 08 Javascript
Node.js包管理器Yarn的入门介绍与安装
Oct 17 Javascript
用JS编写一个函数,返回数组中重复出现过的元素(实例)
Sep 14 Javascript
小程序tab页无法传递参数的方法
Aug 03 Javascript
小程序实现上传视频功能
Aug 18 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中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
php 判断数组是几维数组
2013/03/20 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
2013/06/28 PHP
浅析ThinkPHP中execute和query方法的区别
2014/06/13 PHP
twig模板获取全局变量的方法
2016/02/05 PHP
PHP实现带进度条的Ajax文件上传功能示例
2019/07/02 PHP
JavaScript 加号(+)运算符号
2009/12/06 Javascript
10个实用的脚本代码工具
2010/05/04 Javascript
Javascript操作cookie的函数代码
2012/10/03 Javascript
jQuery $.data()方法使用注意细节
2012/12/31 Javascript
jquery.map()方法的使用详解
2015/07/09 Javascript
jQuery实现滚动鼠标放大缩小图片的方法(附demo源码下载)
2016/03/05 Javascript
原生javascript实现分享到朋友圈功能 支持ios和android
2016/05/11 Javascript
JavaScript队列、优先队列与循环队列
2016/11/14 Javascript
AngularJS中的缓存使用
2017/01/11 Javascript
详解如何让Express支持async/await
2017/10/09 Javascript
vue.js简单配置axios的方法详解
2017/12/13 Javascript
vue项目总结之文件夹结构配置详解
2017/12/13 Javascript
解决vue无法设置滚动位置的问题
2018/10/07 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
jQuery实现鼠标拖动图片功能
2021/03/04 jQuery
[01:15:16]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第一场 1月26日
2021/03/11 DOTA
九步学会Python装饰器
2015/05/09 Python
shelve  用来持久化任意的Python对象实例代码
2016/10/12 Python
详解python3百度指数抓取实例
2016/12/12 Python
Python定时器实例代码
2017/11/01 Python
一篇文章快速了解Python的GIL
2018/01/12 Python
python3 map函数和filter函数详解
2019/08/26 Python
Python基于class()实现面向对象原理详解
2020/03/26 Python
Python库skimage绘制二值图像代码实例
2020/04/10 Python
匡威比利时官网:Converse Belgium
2017/04/13 全球购物
Europcar葡萄牙:葡萄牙汽车和货车租赁
2017/10/13 全球购物
面试自我介绍演讲稿
2014/04/29 职场文书
一般基层干部群众路线教育实践活动个人对照检查材料
2014/11/04 职场文书
幼儿园大班毕业评语
2014/12/31 职场文书
JavaScript高级程序设计之变量与作用域
2021/11/17 Javascript