分享省市区js数据如何转成自己想要的格式

由于今天需要省市区联动,需要用layer的selectY插件,但手头上的js省市区的数据和selectY规定的不一样,于是没有办法只能自己转换了

如有这样的省市区格式js格式:city.js

var citys={
    "110000": {
        "name": "北京市",
        "child": {
            "110100": {
                "name": "市辖区",
                "child": {
                    "110101": "东城区",
                    "110102": "西城区",
                    "110105": "朝阳区",
                    "110106": "丰台区",
                    "110107": "石景山区",
                    "110108": "海淀区",
                    "110109": "门头沟区",
                    "110111": "房山区",
                    "110112": "通州区",
                    "110113": "顺义区",
                    "110114": "昌平区",
                    "110115": "大兴区",
                    "110116": "怀柔区",
                    "110117": "平谷区",
                    "110118": "密云区",
                    "110119": "延庆区"
                }
            }
        }
    },
    "120000": {
        "name": "天津市",
        "child": {
            "120100": {
                "name": "市辖区",
                "child": {
                    "120101": "和平区",
                    "120102": "河东区",
                    "120103": "河西区",
                    "120104": "南开区",
                    "120105": "河北区",
                    "120106": "红桥区",
                    "120110": "东丽区",
                    "120111": "西青区",
                    "120112": "津南区",
                    "120113": "北辰区",
                    "120114": "武清区",
                    "120115": "宝坻区",
                    "120116": "滨海新区",
                    "120117": "宁河区",
                    "120118": "静海区",
                    "120119": "蓟州区"
                }
            }
        }
    
            }};

开始转换……

 

<script>
$(function(){
//"id":2,"pid":0,"name":"\u5317\u4eac\u5e02","code":110000
//console.log(citys);

var cityss=[];
for(var i in citys){

cityss[i]={"id":i,"pid":0,'name':citys[i]['name'],"code":i}

for(var j in citys[i]['child'])
{
cityss[j]={"id":j,"pid":i,'name':citys[i]['child'][j]['name'],"code":j}

for(var k in citys[i]['child'][j]['child'])
{
cityss[k]={"id":k,"pid":j,'name':citys[i]['child'][j]['child'][k],"code":k}
}

}

}


var kk=0;
var area=[];
for(var i in cityss)
{
area[kk]=cityss[i];
kk++
}

console.dir(area);

str=JSON.stringify(area);


$("#jsom").html(str);

})

</script>

 

 

这样就转成自己想要的格式了:

 


这是我转成后的效果
[{"id":"110000","pid":0,"name":"北京市","code":"110000"},{"id":"110100","pid":"110000","name":"市辖区","code":"110100"},{"id":"110101","pid":"110100","name":"东城区","code":"110101"},{"id":"110102","pid":"110100","name":"西城区","code":"110102"},{"id":"110105","pid":"110100","name":"朝阳区","code":"110105"},{"id":"110106","pid":"110100","name":"丰台区","code":"110106"},{"id":"110107","pid":"110100","name":"石景山区","code":"110107"},{"id":"110108","pid":"110100","name":"海淀区","code":"110108"},{"id":"110109","pid":"110100","name":"门头沟区","code":"110109"},{"id":"110111","pid":"110100","name":"房山区","code":"110111"},{"id":"110112","pid":"110100","name":"通州区","code":"110112"}

……
];

如果各位网友有需要的或不懂的,可以联系我哦,qq:598194221

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值