问题描述
使用var opt = document.createElement("option")
时出错,然后无法添加节点!
问题出现的环境背景及自己尝试过哪些方法
我自己测试了,就是在创建节点时有问题,并阻断了for循环。
相关代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>二级联动</title>
<script>
var arr1 = new Array();
arr1[0] = new Array("丰台","海淀","昌平","朝阳");
arr1[1] = new Array("静安","虹桥");
arr1[2] = new Array("天河区","白云","海珠");
arr1[3] = new Array("罗湖","福田","南山","宝安");
arr1[4] = new Array("西湖","滨江","余杭","萧山");
function change(city) {
var value = city.value;
var dst = document.getElementById("districts");
if (value=="-1") {
dst.innerHTML="<option>请选择</option>";
return;
}
dst.options.length=0;
var arr2 = arr1[value];
for (var i = 0;i < arr2.length;i++) {
alert("start");
var opt = dst.createElement("option");
alert("1");
opt.innerText=arr2[i];
alert("2");
dst.appendChild(opt);
}
}
</script>
</head>
<body>
<select onchange="change(this)">
<option value=-1>请选择</option>
<option value="0">北京</option>
<option value="1">上海</option>
<option value="2">广州</option>
<option value="3">深圳</option>
<option value="4">杭州</option>
</select>
<select id="districts">
<option>请选择</option>
</select>
</body>
</html>
你看下报错内容就知道了,dom节点对象没有createElement方法