|
比如:身份,生日,性別等。
現在,可以取城市和地區了。
復制代碼 代碼如下:
<script language="Javascript">
// 地區代碼實在太大了,我這里只貼出 北京,上海,廣州的代碼,完整國內地區編碼請下載附件
// Go_Rush(阿舜) from http://ashun.cnblogs.com/
var areaCode={
'11':'北京市','1101':'北京市市轄區','110101':'北京市東城區','110102':'北京市西城區'
,'110103':'北京市崇文區','110104':'北京市宣武區','110105':'北京市朝陽區','110106':'北京市豐臺區'
,'110107':'北京市石景山區','110108':'北京市海淀區','110109':'北京市門頭溝區','110111':'北京市房山區'
,'1102':'北京市市轄縣','110221':'北京市昌平縣','110222':'北京市順義縣','110223':'北京市通縣'
,'110224':'北京市大興縣','110226':'北京市平谷縣','110227':'北京市懷柔縣','110228':'北京市密云縣'
,'110229':'北京市延慶縣'
,'12':'天津市','1201':'天津市市轄區','120101':'天津市和平區'
,'120102':'天津市河東區','120103':'天津市河西區','120104':'天津市南開區','120105':'天津市河北區'
,'120106':'天津市紅橋區','120107':'天津市塘沽區','120108':'天津市漢沽區','120109':'天津市大港區'
,'120110':'天津市東麗區','120111':'天津市西青區','120112':'天津市津南區','120113':'天津市北辰區'
,'1202':'天津市市轄縣','120221':'天津市寧河縣','120222':'天津市武清縣','120223':'天津市靜海縣'
,'120224':'天津市寶坻縣','120225':'天津市薊縣'
,'31':'上海市'
,'3101':'上海市市轄區','310101':'上海市黃浦區','310102':'上海市南市區','310103':'上海市盧灣區'
,'310104':'上海市徐匯區','310105':'上海市長寧區','310106':'上海市靜安區','310107':'上海市普陀區'
,'310108':'上海市閘北區','310109':'上海市虹口區','310110':'上海市揚浦區','310112':'上海市閔行區'
,'310113':'上海市寶山區','310114':'上海市嘉定區','310115':'上海市浦東新區','3102':'上海市市轄縣'
,'310225':'上海市南匯縣','310226':'上海市奉賢縣','310227':'上海市松江縣','310228':'上海市金山縣'
,'310229':'上海市青浦縣','310230':'上海市崇明縣'
,'44':'廣東省','4401':'廣東省廣州市','440101':'廣東省廣州市市轄區'
,'440102':'廣東省廣州市東山區','440103':'廣東省廣州市荔灣區'
,'440104':'廣東省廣州市越秀區','440105':'廣東省廣州市海珠區'
,'440106':'廣東省廣州市天河區','440107':'廣東省廣州市芳村區'
,'440111':'廣東省廣州市白云區','440112':'廣東省廣州市黃埔區'
,'440122':'廣東省從花縣','440181':'廣東省番禺市','440182':'廣東省花都市','440183':'廣東省增城市'
,'71':'臺灣省','7100':'臺灣','710000':'臺灣省'
,'72':'香港','7200':'香港特別行政區','720000':'香港特別行政區'
,'73':'澳門','7300':'澳門特別行政區'
,'91':'國外'
}
function checkId(pId){
var arrVerifyCode = [1,0,"x",9,8,7,6,5,4,3,2];
var Wi = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
var Checker = [1,9,8,7,6,5,4,3,2,1,1];
if(pId.length != 15 && pId.length != 18) return "身份證號共有 15 碼或18位";
var Ai=pId.length==18?pId.substring(0,17):pId.slice(0,6)+"19"+pId.slice(6,16);
if (!/^/d+$/.test(Ai)) return "身份證除最后一位外,必須為數字!";
var yyyy=Ai.slice(6,10),mm=Ai.slice(10,12)-1,dd=Ai.slice(12,14);
var d=new Date(yyyy,mm,dd),year=d.getFullYear(),mon=d.getMonth(),day=d.getDate(),now=new Date();
if (year!=yyyy || mon!=mm || day!=dd || d>now || now.getFullYear()-year>140) return "身份證輸入錯誤!";
for(var i=0,ret=0;i<17;i++) ret+=Ai.charAt(i)*Wi[i];
Ai+=arrVerifyCode[ret %=11];
return pId.length ==18 && pId.toLowerCase() != Ai?"身份證輸入錯誤!":Ai;
};
function getInfo(id){
//根據身份證取 省份,生日,性別 Go_Rush(阿舜) from http://ashun.cnblogs.com/
id=checkId(id)
if (isNaN(id)) return "錯誤的身份證號碼"
var id=String(id),sex=id.slice(14,17)%2?"男":"女"
prov=areaCode[id.slice(0,6)] || areaCode[id.slice(0,4)] || areaCode[id.slice(0,2)] || "未知地區"
var birthday=(new Date(id.slice(6,10),id.slice(10,12)-1,id.slice(12,14))).toLocaleDateString()
return [prov,birthday,sex]
}
var id="110102198006262301"
alert(getInfo(id))
</script>
下載(64kb)
建議: 地區編碼很大,900多行,90Kb大小,建議把他們放在數據庫里面通過Ajax來取
JavaScript技術:身份證號碼前六位所代表的省,市,區, 以及地區編碼下載,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。