使用json实现市级联动
时间: 2024-05-25 12:04:40 浏览: 12
好的,以下是使用json实现市级联动的示例代码:
HTML部分:
```html
<select id="province">
<option value="">请选择省份</option>
</select>
<select id="city">
<option value="">请选择城市</option>
</select>
```
JavaScript部分:
```javascript
// 定义省市数据
var data = {
"北京市": ["北京市"],
"天津市": ["天津市"],
"河北省": ["石家庄市", "唐山市", "秦皇岛市", "邯郸市", "邢台市", "保定市", "张家口市", "承德市", "沧州市", "廊坊市", "衡水市"],
"山西省": ["太原市", "大同市", "阳泉市", "长治市", "晋城市", "朔州市", "晋中市", "运城市", "忻州市", "临汾市", "吕梁市"],
"内蒙古自治区": ["呼和浩特市", "包头市", "乌海市", "赤峰市", "通辽市", "鄂尔多斯市", "呼伦贝尔市", "巴彦淖尔市", "乌兰察布市", "兴安盟", "锡林郭勒盟", "阿拉善盟"],
// 其他省市数据...
}
// 获取省份数据
var provinceData = Object.keys(data);
// 绑定省份数据到下拉框
var provinceSelect = document.getElementById("province");
for (var i = 0; i < provinceData.length; i++) {
var option = document.createElement("option");
option.value = provinceData[i];
option.text = provinceData[i];
provinceSelect.add(option);
}
// 省份下拉框改变事件
provinceSelect.addEventListener("change", function() {
// 获取选中的省份
var selectedProvince = this.value;
// 获取该省份下的城市数据
var cityData = data[selectedProvince];
// 绑定城市数据到下拉框
var citySelect = document.getElementById("city");
citySelect.innerHTML = "<option value=''>请选择城市</option>"; // 先清空原有选项
for (var i = 0; i < cityData.length; i++) {
var option = document.createElement("option");
option.value = cityData[i];
option.text = cityData[i];
citySelect.add(option);
}
});
```
这样就可以实现简单的省市级联动了。当选择一个省份时,下拉框中就会显示该省份下的所有城市。你可以根据实际情况修改数据和代码。