由于今天需要省市区联动,需要用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