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 相关文章推荐
ExtJS的FieldSet的column列布局
Nov 20 Javascript
jQuery each()小议
Mar 18 Javascript
jQuery 表单验证扩展(三)
Oct 20 Javascript
javascript获取网页各种高宽及位置的方法总结
Jul 27 Javascript
基于ajax与msmq技术的消息推送功能实现代码
Dec 26 Javascript
一个炫酷的Bootstrap导航菜单
Dec 28 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
Jan 20 Javascript
vue组件中点击按钮后修改输入框的状态实例代码
Apr 14 Javascript
JS实现队列的先进先出功能示例
May 10 Javascript
vue选项卡切换登录方式小案例
Sep 27 Javascript
JS实现普通轮播图特效
Jan 01 Javascript
AJAX XMLHttpRequest对象创建使用详解
Aug 20 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
PHP4 与 MySQL 数据库操作函数详解
2006/12/06 PHP
简单采集了yahoo的一些数据
2007/02/14 PHP
用PHP实现Ftp用户的在线管理
2012/02/16 PHP
Codeigniter(CI)框架分页函数及相关知识
2014/11/03 PHP
thinkphp3.2.2前后台公用类架构问题分析
2014/11/25 PHP
ThinkPHP中session函数详解
2016/09/14 PHP
统计jQuery中各字符串出现次数的工具
2012/05/03 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
详谈javascript中DOM的基本属性
2015/02/26 Javascript
理解javascript异步编程
2016/01/27 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
将jquery.qqFace.js表情转换成微信的字符码
2017/12/01 jQuery
JavaScript实现省市联动过程中bug的解决方法
2017/12/04 Javascript
使用vue2.0创建的项目的步骤方法
2018/09/25 Javascript
js实现转动骰子模型
2019/10/24 Javascript
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
利用python3随机生成中文字符的实现方法
2017/11/24 Python
OpenCV-Python实现轮廓检测实例分析
2018/01/05 Python
Django处理多用户类型的方法介绍
2019/05/18 Python
python实现爬取百度图片的方法示例
2019/07/06 Python
pycharm sciview的图片另存为操作
2020/06/01 Python
Python爬虫实例——爬取美团美食数据
2020/07/15 Python
THE OUTNET英国官网:国际设计师品牌折扣网站
2016/08/14 全球购物
请说出以下代码输出什么
2013/08/30 面试题
百度吧主申请感言
2014/01/12 职场文书
优秀学生评语大全
2014/04/25 职场文书
大三学习计划书范文
2014/05/02 职场文书
派出所副所长四风问题个人整改措施思想汇报
2014/10/13 职场文书
承诺函格式模板
2015/01/21 职场文书
看上去很美观后感
2015/06/10 职场文书
2016入党心得体会范文
2016/01/06 职场文书
小学生安全教育心得体会
2016/01/15 职场文书
敬业奉献模范事迹材料(2016精选版)
2016/02/26 职场文书
Go timer如何调度
2021/06/09 Golang
JS精髓原型链继承及构造函数继承问题纠正
2022/06/16 Javascript
vue实现input输入模糊查询的三种方式
2022/08/14 Vue.js