为何这题使用document.getElementsByTagName方法不能获取option标签的数组元素

来源:4-12 编程练习

____晴____

2020-11-01 02:22:36

# 具体遇到的问题
请问这题使用document.getElementsByTagName方法为何不能获取option标签的数组元素

# 报错信息的截图
浏览器里显示不了页面变化
# 相关课程内容截图

# 尝试过的解决思路和结果

# 粘贴全部相关代码,切记添加代码注释(请勿截图)

<script type="text/javascript">

//补充代码

var ye = document.getElementsByTagName('option')[1];

var or = document.getElementsByTagName('option')[2];

var pin = document.getElementsByTagName('option')[3];

var pur = document.getElementsByTagName('option')[4];

var oDiv = document.getElementById('div');

ye.onchange = function(){

oDiv.innerHTML = '我的背景颜色变成了yellow色';

oDiv.style.backgroundColor = 'yellow';

}


or.onchange = function(){

oDiv.innerHTML = '我的背景颜色变成了orange色';

oDiv.style.backgroundColor = 'orange';

}


pin.onchange = function(){

oDiv.innerHTML = '我的背景颜色变成了pink色';

oDiv.style.backgroundColor = 'pink';

}


pur.onchange = function(){

oDiv.innerHTML = '我的背景颜色变成了purple色';

oDiv.style.backgroundColor = 'purple';

}


</script>



在这里输入代码,可通过选择【代码语言】突出显示

写回答

1回答

好帮手慕夭夭

2020-11-01

同学你好,问题解答如下:

1.可以获取的,可以输出一下,示例:

http://img.mukewang.com/climg/5f9e1ee5092c53b405860052.jpg

输出结果:

http://img.mukewang.com/climg/5f9e1f020991f3dc04180032.jpg

但是注意,下拉菜单绑定事件,不能直接给option绑定事件,要给select绑定,这个固定记一下。

2.代码如下修改 :

事件中要进行判断,如果获取的value为“0”(this.value可以获取当前点击选项的value值),那么背景色改变为白色。反之,则把元素背景色设置为当前获取的value。

http://img.mukewang.com/climg/5f9e203a09ddc34509360802.jpg

如下注释的都去掉:

http://img.mukewang.com/climg/5f9e204809d7301006600626.jpg

祝学习愉快~


1

0 学习 · 15276 问题

查看课程