JS实现三级联动

简介: JS实现三级联动

HTML:

<select id="inne">
      <option value="">请选择省</option>
    </select>
    <select id="int">
      <option value="">请选择市</option>
    </select>
    <select id="inpu">
      <option value="">请选择县</option>
    </select>

JS:

<script>
      let data = [{
          id: 1,
          name: "河南",
          childer: [{
              name: "开封",
              childer: [
                "开封1",
                "开封2",
                "开封3",
                "开封4"
              ]
            },
            {
              name: "新乡",
              childer: [
                "新乡1",
                "新乡2",
                "新乡3",
                "新乡4",
              ]
            }
          ]
        },
        {
          id: 2,
          name: "河北",
          childer: [{
              name: "石家庄",
              childer: [
                "石家庄1",
                "石家庄2",
                "石家庄3",
                "石家庄4",
              ]
            },
            {
              name: "衡水",
              childer: [
                "衡水1",
                "衡水2",
                "衡水3",
                "衡水4",
              ]
            }
          ]
        }, {
          id: 2,
          name: "辽宁",
          childer: [{
              name: "葫芦岛",
              childer: [
                "葫芦岛1",
                "葫芦岛2",
                "葫芦岛3",
                "葫芦岛4",
              ]
            },
            {
              name: "锦州",
              childer: [
                "锦州1",
                "锦州2",
                "锦州3",
                "锦州4",
              ]
            }
          ]
        }
      ]
      //获取每个标签
      let inne = document.getElementById('inne');
      let int = document.getElementById('int');
      let inpu = document.getElementById('inpu');
      //循环假数据data'
      for (let i = 0; i < data.length; i++) {
        //拼接option
        inne.innerHTML += '<option value="' + i + '">' + data[i].name + '</option>';
      }
      inne.onclick = function() {
        let tp = this.value;
        int.innerHTML = '<option value="">请选择市</option>';
        for (let i = 0; i < data[tp].childer.length; i++) {
          int.innerHTML += '<option value="' + i + '">' + data[tp].childer[i].name + '</option>';
        }
        int.onclick = function() {
          let ts = this.value;
          inpu.innerHTML = '<option value="">请选择县</option>';
          for (let i = 0; i < data[tp].childer[ts].childer.length; i++) {
            inpu.innerHTML += '<option value="">' + data[tp].childer[ts].childer[i] + '</option>';
          }
        }
      }
    </script>

里面的数据大家可以到时候修改一下用了,祝大家学习愉快

相关文章
|
6月前
|
JSON JavaScript 数据格式
如何用JS实现三级联动功能
如何用JS实现三级联动功能
57 0
|
6月前
|
JavaScript 前端开发
原生js做三级联动
原生js做三级联动
33 0
|
前端开发 JavaScript
前端基础 - JavaScript之省市联动简单案例
前端基础 - JavaScript之省市联动简单案例
75 0
|
6月前
|
JavaScript 前端开发
「 javaScript实现省市区三级联动」
「 javaScript实现省市区三级联动」
|
4月前
|
NoSQL JavaScript 前端开发
JavaScript与数据库MongoDB的联动
JavaScript和MongoDB结合,构建Web应用的关键技术。MongoDB,作为NoSQL数据库,以其灵活性和高性能深受开发者喜爱。本文探讨两者的基本概念,如JavaScript在前端交互和后端数据处理的作用,MongoDB的文档存储和查询特性。通过Node.js和mongoose库,展示了连接数据库、定义数据模型及增删改查操作的代码示例。强调了性能优化(如索引、批量操作)和安全措施(如权限控制、数据加密)的重要性。最后,提供了一个简单的CRUD应用示例,涵盖Express和前端API调用。
52 0
|
5月前
|
存储 JavaScript 前端开发
JS三级联动
JS三级联动
|
存储 JSON JavaScript
|
6月前
|
JavaScript 数据可视化 前端开发
钉钉宜搭通过js触发子表单数据联动
钉钉宜搭通过js触发子表单数据联动
|
6月前
|
JavaScript 前端开发
js 实现三级联动
js 实现三级联动
79 0
|
6月前
|
JavaScript
制作JS省市区三级联动遇到市区选项是空白的问题
制作JS省市区三级联动遇到市区选项是空白的问题