JavaScript语言实现联系地址录入,由3个下拉列表框实现,第一个为选择省份,第二个根据省份选城市,第三个根据城市选择城区
时间: 2024-10-23 19:02:50 浏览: 23
JSP、Java实现选择框多级连动
在JavaScript中,你可以使用HTML结合原生的DOM操作来实现这种动态联动的联系地址录入功能。下面是一个简单的示例:
```html
<!DOCTYPE html>
<html lang="zh">
<head>
<title>联动地址选择</title>
</head>
<body>
<label for="province">省份:</label>
<select id="province" onchange="loadCities()">
<!-- 添加省级数据 -->
</select>
<label for="city">城市:</label>
<select id="city" style="display: none;">
<!-- 一开始是隐藏的 -->
</select>
<label for="district">城区:</label>
<select id="district" style="display: none;"></select>
<script>
// 假设有一个省级数据数组
const provinces = ["北京", "上海", "广东", ...];
function loadCities() {
const provinceSelect = document.getElementById("province");
const citySelect = document.getElementById("city");
citySelect.innerHTML = ""; // 清空已有的选项
if (provinceSelect.value) {
const citiesForProvince = getCityList(provinces, provinceSelect.value);
citiesForProvince.forEach(city => {
const option = document.createElement("option");
option.text = city;
citySelect.appendChild(option);
});
citySelect.style.display = ""; // 显示城市选择框
} else {
citySelect.style.display = "none"; // 隐藏城市选择框
}
}
function getCityList(provinces, selectedProvince) {
// 这里只是一个简化的例子,实际应用中你需要从服务器或数据库获取对应省份的城市列表
return provinces.filter(p => p !== selectedProvince).map(p => `${selectedProvince}-${p}`);
}
// 初始化省份下拉列表
provinces.forEach(province => {
const option = document.createElement("option");
option.text = province;
option.value = province;
document.getElementById("province").appendChild(option);
});
</script>
</body>
</html>
```
在这个示例中,当用户在“省份”下拉框中选择一个值,`loadCities`函数会被触发,它会清空并重新加载“城市”下拉框的内容。`getCityList`函数用于生成根据当前省份显示的城市列表。同样,当选择了城市后,“城区”下拉框也会动态更新。
阅读全文