js实现的城市三层选择

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script>
    window.onload = function () {
        var city = [
            {
                name: "江苏",
                children: [{
  name2: "南京", child: ["鼓楼区", "江宁区"]}, {
  name2: "连云港", child: ["海州区", "赣榆区"]}, {
                    name2: "苏州市",
                    child: ["姑苏区", "吴中区"]
                }]
            },
            {
                name: "山东",
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现二级地域选择可以通过以下步骤实现: 1. 定义一个包含省份和城市数据的数组。 2. 创建两个下拉框,一个用于选择省份,另一个用于选择城市。 3. 给省份下拉框绑定 onchange 事件,在该事件中获取选择的省份,然后根据选择的省份动态生成城市下拉框中的选项。 4. 给城市下拉框绑定 onchange 事件,在该事件中获取选择城市信息。 下面是一个简单的实现示例: HTML代码: ``` <label>省份:</label> <select id="province"> <option value="">请选择省份</option> <option value="1">广东省</option> <<option value="2">浙江省</option> </select> <label>城市:</label> <select id="city"> <option value="">请选择城市</option> </select> ``` JS代码: ``` // 定义省份和城市数据 var data = [ { province: "广东省", cities: ["广州市", "深圳市", "珠海市"] }, { province: "浙江省", cities: ["杭州市", "宁波市", "温州市"] } ]; // 绑定省份下拉框 onchange 事件 var provinceSelect = document.getElementById("province"); provinceSelect.onchange = function() { var province = provinceSelect.value; var citySelect = document.getElementById("city"); // 清空城市下拉框中的选项 citySelect.innerHTML = "<option value=''>请选择城市</option>"; if (province) { // 根据选择的省份生成城市下拉框中的选项 for (var i = 0; i < data.length; i++) { if (data[i].province === province) { var cities = data[i].cities; for (var j = 0; j < cities.length; j++) { var option = document.createElement("option"); option.value = cities[j]; option.text = cities[j]; citySelect.appendChild(option); } break; } } } }; // 绑定城市下拉框 onchange 事件 var citySelect = document.getElementById("city"); citySelect.onchange = function() { var city = citySelect.value; console.log("选择城市是:" + city); }; ``` 在上面的代码中,data 数组中存储了省份和城市数据,当选择省份时,根据选择的省份动态生成城市下拉框中的选项。当选择城市时,会在控制台输出选择城市信息。你可以根据自己的需求修改和扩展代码。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值