问题描述
- 如何在javascript中获得节点对应的内容
-
<script type="text/javascript"> function city() { var arr=[["选择城市"],["海淀","东城","朝阳区"],["武汉","新洲","黄冈"], ["广州","珠海","佛山"],["浦东","新城"]]; var index=document.getElementById("selid").selectedIndex; //alert(document.getElementById("selid").options[index].innerText); var subnode=document.getElementById("subselid"); var citys=arr[index]; for(var x=0;x<citys.length;x++) { //alert(citys[x]); var optnode=document.createElement("option");r optnode.innerText=citys[x];//感觉这里没有实现获得innerText的功能。。。 subnode.appendChild(optnode); } } </script>
大家帮我看看是不是那有问题啊,也就是要做一个选择省份然后级联的出现所对应的城市名称。
用
alert(citys[x])
可以打印出来对应的城市,但是下一步通过innerText
获取节点对应的内容就不行啦。。。怎么办???
解决方案
首先我和楼上的一样,看到了;后边的r,先把它去掉试试,如果OK了,下边就别看了,如果还不行建议试试(因为我平时用的JQuery直接append就ok了,纯js早忘记了)
//我担心是不是你写的代码不兼容,下边试一下
function addOption(){
//根据id查找对象,
var obj=document.getElementById('mySelect');
//添加一个选项
obj.add(new Option("文本","值")); //这个只能在IE中有效
obj.options.add(new Option("text","value")); //这个兼容IE与firefox
}
解决方案二:
var optnode=document.createElement("option");r
后面多一个r
;会报语法错误吧....然后以后的代码就没执行。
时间: 2025-01-01 09:50:57