js 三级联动

简介: js 三级联动

1.先搭建html的结构

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

2.这里先给大家写一个假数据

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",
        ]
      }
    ]
  }
]

3.下面就是js了

//获取每个标签
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>';
    }
  }
}
相关文章
|
4月前
|
JSON JavaScript 数据格式
如何用JS实现三级联动功能
如何用JS实现三级联动功能
29 0
|
4月前
|
JavaScript 前端开发
原生js做三级联动
原生js做三级联动
15 0
|
7月前
|
前端开发 JavaScript
前端基础 - JavaScript之省市联动简单案例
前端基础 - JavaScript之省市联动简单案例
37 0
|
4月前
|
JavaScript 前端开发
「 javaScript实现省市区三级联动」
「 javaScript实现省市区三级联动」
|
8月前
|
存储 JSON JavaScript
|
4月前
|
JavaScript 前端开发
js 实现三级联动
js 实现三级联动
28 0
|
4月前
|
JavaScript 数据可视化 前端开发
钉钉宜搭通过js触发子表单数据联动
钉钉宜搭通过js触发子表单数据联动
|
4月前
|
JavaScript
制作JS省市区三级联动遇到市区选项是空白的问题
制作JS省市区三级联动遇到市区选项是空白的问题
|
9月前
|
JavaScript 前端开发
JS实现三级联动
JS实现三级联动
|
5月前
|
JavaScript
JS实现三级联动
JS实现三级联动
26 0