固定电话:

var myreg =/^((1[0-9]{10})|(((([0-9]{3}-)?[0-9]{8})|(([0-9]{4}-)?[0-9]{7}))(-[0-9]{1,4})?))$/;

邮箱:

var myreg =/^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;

手机号码验证:

var myreg =/^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/;

调用方式:

邮箱:

if(email){   //判断邮箱是否为空
                if(!myreg .test(email)){  //判断是否符合正则表达式
                    alert("邮箱格式不正确!");  //给出提示
                    return;//返回
                }
  }

固定电话:

if(tel){   //判断固话是否为空

if (!myreg .test(tel)) {    //判断是否符合正则表达式
                           hint_mes('请正确填写固定电话号码!');   //给出提示
                            return ;   //返回
                }

}

手机号码验证:

if(phone){   //判断电话是否为空

if (!myreg.test(phone)) {    //判断是否符合正则表达式
                            hint_mes('请正确填写手机号码!');    //给出提示
                           return ;    //返回
                  }

}

身份证号验证:

  1. /*
  2. 根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
  3. 地址码表示编码对象常住户口所在县(市、旗、区)的行政区划代码。
  4. 出生日期码表示编码对象出生的年、月、日,其中年份用四位数字表示,年、月、日之间不用分隔符。
  5. 顺序码表示同一地址码所标识的区域范围内,对同年、月、日出生的人员编定的顺序号。顺序码的奇数分给男性,偶数分给女性。
  6. 校验码是根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。
  7. 出生日期计算方法。
  8. 15位的身份证编码首先把出生年扩展为4位,简单的就是增加一个19或18,这样就包含了所有1800-1999年出生的人;
  9. 2000年后出生的肯定都是18位的了没有这个烦恼,至于1800年前出生的,那啥那时应该还没身份证号这个东东,⊙﹏⊙b汗...
  10. 下面是正则表达式:
  11. 出生日期1800-2099  (18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])
  12. 身份证正则表达式    /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i
  13. 15位校验规则 6位地址编码+6位出生日期+3位顺序号
  14. 18位校验规则 6位地址编码+8位出生日期+3位顺序号+1位校验位
  15. 校验位规则     公式:∑(ai×Wi)(mod 11)……………………………………(1)
  16. 公式(1)中:
  17. i----表示号码字符从由至左包括校验码在内的位置序号;
  18. ai----表示第i位置上的号码字符值;
  19. Wi----示第i位置上的加权因子,其数值依据公式Wi=2^(n-1)(mod 11)计算得出。
  20. i 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
  21. Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1
  22. */
  23. // 使用方法      var c = '130981199312253466';
  24. //      var res= identityCodeValid(c);
  25. //身份证号合法性验证
  26. //支持15位和18位身份证号
  27. //支持地址编码、出生日期、校验位验证
  28. function identityCodeValid(code) {
  29. var city = {
  30. 11 : "北京",
  31. 12 : "天津",
  32. 13 : "河北",
  33. 14 : "山西",
  34. 15 : "内蒙古",
  35. 21 : "辽宁",
  36. 22 : "吉林",
  37. 23 : "黑龙江 ",
  38. 31 : "上海",
  39. 32 : "江苏",
  40. 33 : "浙江",
  41. 34 : "安徽",
  42. 35 : "福建",
  43. 36 : "江西",
  44. 37 : "山东",
  45. 41 : "河南",
  46. 42 : "湖北 ",
  47. 43 : "湖南",
  48. 44 : "广东",
  49. 45 : "广西",
  50. 46 : "海南",
  51. 50 : "重庆",
  52. 51 : "四川",
  53. 52 : "贵州",
  54. 53 : "云南",
  55. 54 : "西藏 ",
  56. 61 : "陕西",
  57. 62 : "甘肃",
  58. 63 : "青海",
  59. 64 : "宁夏",
  60. 65 : "新疆",
  61. 71 : "台湾",
  62. 81 : "香港",
  63. 82 : "澳门",
  64. 91 : "国外 "
  65. };
  66. var tip = "";
  67. var pass = true;
  68. if (!code
  69. || !/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i
  70. .test(code)) {
  71. tip = "身份证号格式错误";
  72. pass = false;
  73. }
  74. else if (!city[code.substr(0, 2)]) {
  75. tip = "地址编码错误";
  76. pass = false;
  77. } else {
  78. //18位身份证需要验证最后一位校验位
  79. if (code.length == 18) {
  80. code = code.split('');
  81. //∑(ai×Wi)(mod 11)
  82. //加权因子
  83. var factor = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ];
  84. //校验位
  85. var parity = [ 1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2 ];
  86. var sum = 0;
  87. var ai = 0;
  88. var wi = 0;
  89. for (var i = 0; i < 17; i++) {
  90. ai = code[i];
  91. wi = factor[i];
  92. sum += ai * wi;
  93. }
  94. var last = parity[sum % 11];
  95. if (parity[sum % 11] != code[17]) {
  96. pass = false;
  97. }
  98. }
  99. }
  100. return pass;
  101. }

将此段代码复制封装到 js 中,在需要验证的jsp页面引入<script src="../phone/js/card_validate.js"></script>。调用即可。

var tem=identityCodeValid(idNumber);   //调用方法
            if(!tem){   //判断方法返回值
                hint_mes("身份证号格式不正确!");  // 给出提示
                return ; //停止操作
            }

手机号 ,邮箱,固定电话js验证,身份证号(正则表达式)相关推荐

  1. 使用js验证身份证号格式以及身份证号中的生日验证

    由于不管是测试项目练手还是实际项目开发,都应该考虑数据的严密性和软件的通俗易懂的实用性,下面是我用js实现的验证身份证号格式以及身份证号中的生日验证代码 //生日移出点击事件验证身份证号中的生日验证 ...

  2. js验证身份证号,超准确

    看程序前先来了解下身份证号的构成:身份证号分为两种,旧的为15位,新的为18位.身份证15位编码规则:dddddd yymmdd xx p    其中 dddddd:地区码    yymmdd: 出生 ...

  3. js 验证身份证号,根据身份证获取出生年月/性别

    用到的input <input id="idCard" name="idCard" class="form-control" type ...

  4. js验证身份证号的真实性

    身份证号码结构 组成说明 计算方法 代码验证 身份证号码结构 组成说明 公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成. 前6位为地址码,以数字1-9开头,后5位为0-9的数字: 第 ...

  5. JS验证身份证号地区码及最后一位校验码

    /* 参数为身份证号 返回正确校验码 */ function getjy(id) {     var arr = new Array();//分别取出身份证的前17位加入到这个数组     var a ...

  6. JS验证身份证号输入是否正确,身份证号码正则表达式

    const correctFormat = '511622199908281958';const inCorrectFormat = '1212121212121212121';// 身份证号码为15 ...

  7. 手机号码验证--区号验证--电话号验证--分机号验证--手机号和固定电话二选一--用户名只能为汉字或者英文请--邮箱账号...

    // 手机号码验证jQuery.validator.addMethod("isPhoneNumber", function(value, element) {var tel = / ...

  8. 使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名

    目录 (原创不易,你们对阿超的赞就是阿超持续更新的动力!) (以免丢失,建议收藏~~~) ------------------------------------------------------- ...

  9. js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr)...

    js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr) 一.总结 1.|符号的使用:var reg=/^\d ...

最新文章

  1. 2014-01-04 SQL练习
  2. Activity采用栈式管理的理解
  3. margin相关技巧
  4. 友情提示,你该找一份假期实习啦!
  5. [LeetCode] 513. Find Bottom Left Tree Value_ Medium tag: BFS
  6. 中国石化:五年要建充换电站5000座
  7. Redis info信息(转载)
  8. python学习基础语法_python学习-基础语法
  9. 也谈Oracle异常: ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小
  10. Camshift算法原理及其Opencv实现
  11. fopen()函数的文件模式
  12. 关于ODBC使用SQL语句和调用存储过程传递参数的使用方式说明
  13. PHP在Windows下安装配置第一步
  14. PID算法(C语言)
  15. linux系统日志message 分析,Linux系统日志及日志分析
  16. python中文分词器(jieba类库)
  17. 阿里云云计算ACP学习(八)---网络与VPC
  18. VR时代的媒介——虚拟的真实感就是真实
  19. python pexels_从零开始学习python爬虫方法,从安装到语法基础(附赠资料)
  20. 百度地图 标记聚合器MarkerClusterer结合TextIconOverlay,根据标记点的属性更换聚合器的样式

热门文章

  1. 是什么让你萌发了跳槽的念头?
  2. mysql创建存储过程及遍历查询结果,mysql 用存储过程遍历结果集
  3. Android/Linux之procrank查内存工具
  4. Android MediaRecorder调用AudioRecord流程
  5. Mac 10.12启动QXDM crash解决
  6. android源码编译的小小总结
  7. 机器学习之工程师入门路线
  8. Vue之脚手架第一个项目
  9. onvif协议之抓图
  10. 人脸方向学习(十九):Face Landmark Detection-SBR-解读