三级联动
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
省:<br>
<select name="sheng" id="sheng">
<option value="">请选择</option>
</select>
<br>
市:<br>
<select name="shi" id="shi">
<option value="">请选择</option>
</select>
<br>
区:<br>
<select name="qu" id="qu">
<option value="">请选择</option>
</select>
<script type="text/javascript">
onload = function() {
var json = {
"北京": [{
"北京市": ["朝阳", "海定"]
}],
"广东": [{
"广州市": ["越秀", "天河"]
}, {
"深圳市": ["罗湖", "福田"]
}],
"湖南": [{
"长沙市": ["长沙", "芙蓉"]
}, {
"衡阳市": ["南岳", "衡阳"]
}]
};
var sheng = document.getElementById("sheng");
for (var i in json) {
var shengOpt = document.createElement("option");
var shengtxt = document.createTextNode(i);
shengOpt.appendChild(shengtxt);
shengOpt.value = i;
sheng.appendChild(shengOpt);
}
sheng.onchange = function(event) {
var shiArray = json[sheng.value];
console.log(shiArray);
var shi = document.getElementById("shi");
shi.innerHTML = "";
var shiOpt = document.createElement("option");
var shiOptTxt = document.createTextNode("请选择");
shiOpt.appendChild(shiOptTxt);
shi.appendChild(shiOpt);
for (let s of shiArray) {
for (var i in s) {
var shiOpt = document.createElement("option");
var shiOptTxt = document.createTextNode(i);
shiOpt.appendChild(shiOptTxt);
shiOpt.value = i;
shi.appendChild(shiOpt);
}
}
}
var shi = document.getElementById("shi");
shi.onchange = function(){
console.log(this.value);
console.log(sheng.value);
var shi = json[sheng.value];
var qu = document.getElementById("qu");
qu.innerHTML = "";
var quOpt = document.createElement("option");
var quOptTxt = document.createTextNode("请选择");
quOpt.appendChild(quOptTxt);
qu.appendChild(quOpt);
for (var item of shi) {
var quval = item[this.value];
if(quval){
for (var item of quval) {
var quOpt = document.createElement("option");
var quOptTxt = document.createTextNode(item);
quOpt.appendChild(quOptTxt);
quOpt.value = item;
qu.appendChild(quOpt);
}
}
}
}
};
</script>
</body>
</html>