標籤:決定 資料 沒有 新華 data span 城市 result 整數
原文:http://www.cnblogs.com/baibaluo/archive/2011/06/03/2071255.html#2585076
項目裡需要一個根據社會安全號碼,取得發證地行政區劃的的功能。
網上搜了一下,多數都是服務端的實現
這個功能說白了就是一個映射,實在不想放在服務端,想用js的dict實現。
網上有一個js的實現,但是映射好像不很全,有些地區映射不到。
於是決定自己弄一個。
社會安全號碼到行政區劃的映射是從ip138那個網站的js裡整理出來的,測試了一下,沒有發現映射不到地區的社會安全號碼。
現在分享給大家。
下面貼出的代碼,資料對應部分,只列出了少數的省市縣
完整的js檔案有190k,發部落格居然不能帶附件。。。鄙視下
大家來這裡下載吧。http://files.cnblogs.com/baibaluo/id_card_area.js
/** * 根據社會安全號碼,取得行政區劃的js */ var id_card_area = { //根據社會安全號碼取得發證地,社會安全號碼前六位映射到地區的結果例如“110101--北京市東城區”“411202--河南省三門峽市湖濱區” getAreaByIdCard : function(idCard) { if(!idCard || idCard.length < 6) return ‘‘; var provinceNo = idCard.substring(0, 2) + ‘0000‘; var cityNo = idCard.substring(0, 4) + ‘00‘; var countyNo = idCard.substring(0, 6); var provinceName = this.data.province[provinceNo]; var cityName = this.data.city[cityNo]; var countyName = this.data.county[countyNo]; var result; result = (provinceName ? provinceName : ‘‘) + ‘‘ + (cityName ? cityName : ‘‘) + ‘‘ + (countyName ? countyName : ‘‘); return result; }, //映射資料,2011年3月從ip138的社會安全號碼前六位查詢的js中整理出來 //資料稍微有點大,這裡只列出一部分省市縣,完整資料的js請從附件下載 data:{ province: { 110000:"北京市", 120000:"天津市", 130000:"河北省", 410000:"河南省" }, city:{ 130100:"石家莊市", 130200:"唐山市", 130300:"秦皇島市", 130400:"邯鄲市", 130500:"邢台市", 130600:"保定市", 130700:"張家口市", 130800:"承德市", 130900:"滄州市", 131000:"廊坊市", 131100:"衡水市", 132100:"邯鄲地區", 132200:"邢台地區", 132300:"石家莊市", 132400:"保定地區", 132500:"張家口地區", 132600:"承德地區", 132800:"廊坊地區", 132900:"滄州地區", 133000:"衡水地區", 140100:"太原市", 140200:"大同市", 140300:"陽泉市", 140400:"長治市", 140500:"晉城市", 140600:"朔州市", 140700:"晉中市", 140800:"運城市", 140900:"忻州市", 141000:"臨汾市", 141100:"呂梁市" } county:{ 110101:"東城區", 110102:"西城區", 110103:"崇文區", 110104:"宣武區", 110105:"朝陽區", 110106:"丰台區", 110107:"石景山區", 110108:"海澱區", 110109:"門頭溝區", 110110:"燕山區", 110111:"房山區", 110112:"通州區", 110113:"順義區", 110114:"昌平區", 110115:"大興區", 110116:"懷柔區", 110117:"平穀區", 110221:"昌平縣", 110222:"順義縣", 110223:"通縣", 110224:"大興縣", 110225:"房山縣", 110226:"平穀縣", 110227:"懷柔縣", 110228:"密雲縣", 110229:"延慶縣", 120101:"和平區", 120102:"河東區", 120103:"河西區", 120104:"南開區", 120105:"河北區", 120106:"紅橋區", 120107:"塘沽區", 120108:"漢沽區", 120109:"大港區", 120110:"東麗區", 120111:"西青區", 120112:"津南區", 120113:"北辰區", 120114:"武清區", 120115:"寶坻區", 120221:"寧河縣", 120222:"武清縣", 120223:"靜海縣", 120224:"寶坻縣", 120225:"薊縣", 130101:"市轄區", 130102:"長安區", 130103:"橋東區", 130104:"橋西區", 130105:"新華區", 130106:"郊區", 130107:"井陘礦區", 130108:"裕華區", 130121:"井陘縣", 130122:"獲鹿縣", 130123:"正定縣", 130124:"欒城縣", 130125:"行唐縣", 130126:"靈壽縣", 130127:"高邑縣", 130128:"深澤縣", 130129:"贊皇縣", 130130:"無極縣", 130131:"平山縣", 130132:"元氏縣", 130133:"趙縣", 130181:"辛集市", 130182:"槁城市", 130183:"晉州市", 130184:"新樂市" } } }
根據社會安全號碼,取得行政區劃的Javascript實現