亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > JavaScript > 正文

javascript實現驗證身份證號的有效性并提示

2024-05-06 16:19:05
字體:
來源:轉載
供稿:網友

下面分享的JS腳本是我用過的最完善的身份證號的驗證程序了,因為只有真正的身份證號才能被通過,小伙伴們可以試試。直接復制運行。

javascript實現驗證身份證號的有效性并提示

 

 
  1. function nunber(allowancePersonValue){  
  2. if(allowancePersonValue=="身份證號"){  
  3. $("#span_username").show();  
  4. $("#span_username").html("身份證號不能為空");  
  5. return false;  
  6. }  
  7. //校驗長度,類型  
  8. else if(isCardNo(allowancePersonValue) === false)  
  9. {  
  10. $("#span_username").show();  
  11. $("#span_username").html("您輸入的身份證號碼不正確,請重新輸入");  
  12. return false;  
  13. }  
  14. //檢查省份  
  15. else if(checkProvince(allowancePersonValue) === false)  
  16. {  
  17. $("#span_username").show();  
  18. $("#span_username").html("您輸入的身份證號碼不正確,請重新輸入");  
  19. return false;  
  20. }  
  21. //校驗生日  
  22. else if(checkBirthday(allowancePersonValue) === false)  
  23. {  
  24. $("#span_username").show();  
  25. $("#span_username").html("您輸入的身份證號碼生日不正確,請重新輸入");  
  26. return false;  
  27. }  
  28. //檢驗位的檢測  
  29. else if(checkParity(allowancePersonValue) === false)  
  30. {  
  31. $("#span_username").show();  
  32. $("#span_username").html("您的身份證校驗位不正確,請重新輸入");  
  33. return false;  
  34. }else{  
  35. $("#span_username").hide();  
  36. return true;  
  37. }  
  38.  
  39. }  
  40.  
  41. //身份證省的編碼  
  42. var vcity={ 11:"北京",12:"天津",13:"河北",14:"山西",15:"內蒙古",  
  43. 21:"遼寧",22:"吉林",23:"黑龍江",31:"上海",32:"江蘇",  
  44. 33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山東",41:"河南",  
  45. 42:"湖北",43:"湖南",44:"廣東",45:"廣西",46:"海南",50:"重慶",  
  46. 51:"四川",52:"貴州",53:"云南",54:"西藏",61:"陜西",62:"甘肅",  
  47. 63:"青海",64:"寧夏",65:"新疆",71:"臺灣",81:"香港",82:"澳門",91:"國外" 
  48. };  
  49.  
  50. //檢查號碼是否符合規范,包括長度,類型  
  51. function isCardNo(card){  
  52. //身份證號碼為15位或者18位,15位時全為數字,18位前17位為數字,最后一位是校驗位,可能為數字或字符X  
  53. var reg = /(^/d{15}$)|(^/d{17}(/d|X)$)/;  
  54. if(reg.test(card) === false){  
  55. //alert("demo");  
  56. return false;  
  57. }  
  58. return true;  
  59. }  
  60.  
  61. //取身份證前兩位,校驗省份  
  62. function checkProvince(card){  
  63. var province = card.substr(0,2);  
  64. if(vcity[province] == undefined){  
  65. return false;  
  66. }  
  67. return true;  
  68. }  
  69.  
  70. //檢查生日是否正確  
  71. function checkBirthday(card){  
  72. var len = card.length;  
  73. //身份證15位時,次序為?。?位)市(3位)年(2位)月(2位)日(2位)校驗位(3位),皆為數字  
  74. if(len == '15'){  
  75. var re_fifteen = /^(/d{6})(/d{2})(/d{2})(/d{2})(/d{3})$/;  
  76. var arr_data = card.match(re_fifteen);  
  77. var year = arr_data[2];  
  78. var month = arr_data[3];  
  79. var day = arr_data[4];  
  80. var birthday = new Date('19'+year+'/'+month+'/'+day);  
  81. return verifyBirthday('19'+year,month,day,birthday);  
  82. }  
  83. //身份證18位時,次序為省(3位)市(3位)年(4位)月(2位)日(2位)校驗位(4位),校驗位末尾可能為X  
  84. if(len == '18'){  
  85. var re_eighteen = /^(/d{6})(/d{4})(/d{2})(/d{2})(/d{3})([0-9]|X)$/;  
  86. var arr_data = card.match(re_eighteen);  
  87. var year = arr_data[2];  
  88. var month = arr_data[3];  
  89. var day = arr_data[4];  
  90. var birthday = new Date(year+'/'+month+'/'+day);  
  91. return verifyBirthday(year,month,day,birthday);  
  92. }  
  93. return false;  
  94. }  
  95.  
  96. //校驗日期  
  97. function verifyBirthday(year,month,day,birthday){  
  98. var now = new Date();  
  99. var now_year = now.getFullYear();  
  100. //年月日是否合理  
  101. if(birthday.getFullYear() == year && (birthday.getMonth() + 1) == month && birthday.getDate() == day)  
  102. {  
  103. //判斷年份的范圍(3歲到100歲之間)  
  104. var time = now_year - year;  
  105. if(time >= 3 && time <= 100)  
  106. {  
  107. return true;  
  108. }  
  109. return false;  
  110. }  
  111. return false;  
  112. }  
  113.  
  114. //校驗位的檢測  
  115. function checkParity(card){  
  116. //15位轉18位  
  117. card = changeFivteenToEighteen(card);  
  118. var len = card.length;  
  119. if(len == '18'){  
  120. var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);  
  121. var arrCh = new Array('1''0''X''9''8''7''6''5''4''3''2');  
  122. var cardTemp = 0, i, valnum;  
  123. for(i = 0; i < 17; i ++)  
  124. {  
  125. cardTemp += card.substr(i, 1) * arrInt[i];  
  126. }  
  127. valnum = arrCh[cardTemp % 11];  
  128. if (valnum == card.substr(17, 1))  
  129. {  
  130. return true;  
  131. }  
  132. return false;  
  133. }  
  134. return false;  
  135. }  
  136.  
  137. //15位轉18位身份證號  
  138. function changeFivteenToEighteen(card){  
  139. if(card.length == '15')  
  140. {  
  141. var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);  
  142. var arrCh = new Array('1''0''X''9''8''7''6''5''4''3''2');  
  143. var cardTemp = 0, i;  
  144. card = card.substr(0, 6) + '19' + card.substr(6, card.length - 6);  
  145. for(i = 0; i < 17; i ++)  
  146. {  
  147. cardTemp += card.substr(i, 1) * arrInt[i];  
  148. }  
  149. card += arrCh[cardTemp % 11];  
  150. return card;  
  151. }  
  152. return card;  
  153. }  

使用方法:

 

 
  1. <input type="text" class="reg_txt" value="身份證號" titles="請輸入您的身份證號!" name="userid" id="username" maxlength="40" onfocus="if(this.value=='身份證號'){this.value='';}" onblur="if(this.value==''){this.value='身份證號';}nunber(this.value);" style="border: 1px solid red;"><br>  
  2. <span class="c_red" id="span_username"></span>  

效果為輸入身份證號,焦掉移開后自動驗證,并返回信息!

以上所述就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
全色精品综合影院| 亚洲欧美国产日韩天堂区| 精品偷拍一区二区三区在线看| 精品视频久久久久久| 国产日韩av在线| 欧美精品一本久久男人的天堂| 久久精品国产亚洲| 亚洲乱码av中文一区二区| 91精品久久久久久久久中文字幕| 91夜夜未满十八勿入爽爽影院| 永久免费看mv网站入口亚洲| 久久综合久久美利坚合众国| 精品国产乱码久久久久久天美| 亚洲精品电影久久久| 亚洲午夜女主播在线直播| 亚洲欧美在线磁力| 久久频这里精品99香蕉| 国产视频精品一区二区三区| 亚洲性夜色噜噜噜7777| 亚洲午夜精品视频| 国产成人精彩在线视频九色| 久久久久久亚洲| 国产精品96久久久久久又黄又硬| 亚洲国语精品自产拍在线观看| 欧美精品久久久久久久久久| 最近更新的2019中文字幕| 亚洲国产欧美精品| 国产精品午夜视频| 亚洲毛片一区二区| 国产精品九九久久久久久久| 亚洲综合中文字幕在线| 日韩免费黄色av| 国产精品人成电影在线观看| 亚洲人精选亚洲人成在线| 欧美在线视频一区| 日韩va亚洲va欧洲va国产| 成人亚洲欧美一区二区三区| 国产精品第一视频| 国产精品盗摄久久久| 亚洲福利在线看| 亚洲国产成人久久综合| 91久久久久久| 欧美疯狂做受xxxx高潮| 97色在线播放视频| 国产日韩在线看| 国产精品久久色| 中文字幕欧美亚洲| 国产在线精品自拍| 日韩的一区二区| 国产精品一区二区三区久久久| 亚洲第一页在线| 欧美日韩国产一区二区| 国产精品人成电影| 久久免费少妇高潮久久精品99| 日韩色av导航| 欧美国产在线电影| 亚洲xxxxx电影| 亚洲天堂精品在线| 福利微拍一区二区| 日韩精品高清视频| 亚洲免费视频在线观看| 久久久av网站| 日韩在线高清视频| 欧美日韩免费网站| 欧美电影院免费观看| 欧美黑人国产人伦爽爽爽| 久久久久久久久久国产| 久久久久成人网| 国产欧美在线观看| 国产精品吹潮在线观看| 亚洲精品乱码久久久久久按摩观| 国产欧美日韩中文| 欧美激情免费看| 日韩资源在线观看| 欧美国产日韩中文字幕在线| 97久久久久久| 91香蕉嫩草神马影院在线观看| 国产美女扒开尿口久久久| 国产一区二区久久精品| 亚洲аv电影天堂网| 91在线观看免费观看| 日韩在线观看免费av| 欧美成人午夜激情在线| 国产午夜精品一区理论片飘花| 日本精品免费一区二区三区| 亚洲精品一区二三区不卡| 国产盗摄xxxx视频xxx69| 日韩精品黄色网| 青青草99啪国产免费| 51色欧美片视频在线观看| 韩日精品中文字幕| 中文字幕日韩在线视频| 夜色77av精品影院| 精品国偷自产在线视频99| 国产精品av网站| 久久久精品视频在线观看| 久久亚洲精品毛片| 日韩av在线天堂网| 久久综合亚洲社区| 国产亚洲精品美女久久久| 日韩av片永久免费网站| 日韩高清电影免费观看完整| 亚洲电影免费观看高清完整版| 国产精品99久久久久久久久| 国产精品久久久91| 日本韩国欧美精品大片卡二| 国产精品96久久久久久| 亚洲欧美国产一区二区三区| 91超碰中文字幕久久精品| 欧美日韩亚洲一区二| 国产成人精品一区二区三区| 国产香蕉精品视频一区二区三区| 在线成人一区二区| 国产精品69久久久久| 欧美性生交xxxxx久久久| 91久久国产精品91久久性色| 日日摸夜夜添一区| 国产精品久久久亚洲| 亚洲美女黄色片| 国产福利视频一区| 亚洲free嫩bbb| 日韩在线观看免费网站| 亚洲精品成人久久电影| 亚洲区中文字幕| 热re91久久精品国99热蜜臀| 国产亚洲欧美日韩精品| 亚洲精品98久久久久久中文字幕| 精品久久久久久久久久久| 久久久久成人网| 久久这里有精品| 中文字幕亚洲二区| 日韩美女视频免费在线观看| 国产一区二区三区在线视频| 国产女精品视频网站免费| 亚洲日本中文字幕| 国产精品爽爽ⅴa在线观看| 国产日韩欧美中文| 日韩精品免费在线播放| 欧美www视频在线观看| 久久精品久久久久久| 亚洲第一福利网| 欧美性色视频在线| 成人黄色短视频在线观看| 大荫蒂欧美视频另类xxxx| 国产精品久久久久久久久久东京| 亚洲小视频在线| 国产精品一区二区三区成人| 欧美精品生活片| 日韩日本欧美亚洲| 久久免费视频观看| 亚洲免费成人av电影| 欧美—级a级欧美特级ar全黄| 国产精品嫩草视频| 欧美在线免费观看| 国产免费成人av| 欧美精品免费看| 91久久精品日日躁夜夜躁国产| 国产精品情侣自拍| 亚洲色图综合网| 4444欧美成人kkkk| 欧美精品国产精品日韩精品| 538国产精品一区二区免费视频| 一区二区国产精品视频| 国产日韩精品视频|