我想要创建一个下拉菜单来改变表格中一个单元格的背景颜色。我下面的代码有效,但仅适用于预定义选项的列表。现有的代码如下:使用javascript下拉菜单更改表格单元格的颜色
<form name="bgcolorForm">Try it now:
<select onChange="if(this.selectedIndex!=0)
document.getElementById('mycell').bgColor=this.options[this.selectedIndex].value">
<option value="choose">set background color
<option value="FFFFCC">light yellow
<option value="CCFFFF">light blue
<option value="CCFFCC">light green
<option value="CCCCCC">gray
<option value="FFFFFF">white
</select></form>
<table>
<tr>
<td id = "mycell">Cell One</td>
<td>Cell Two</td>
</tr>
</table>
我想修改这个代码,它引用了包含在现有列表值的列表(HTML颜色名称)。对于instnace,而不是列出的选项值,我有:
<select name="bg_color" id="bg_color" onchange=...>
我有写代码的“平变化”部分的麻烦。我认为我需要创建一个变量才能做到这一点...我想我需要到达.text部分,因为我的下拉列表包含诸如“红色,蓝色,绿色等”的颜色名称。以下是我试图完成这个的方式。
<script type="text/javascript">
var e = document.getElementById("bg_color");
var newcolor = e.options[e.selectedIndex].text;
</script>
我在正确的轨道上吗?请让我知道你会如何做到这一点。
此外,我很好奇,如果我想将这个应用到一个额外的改变,我将不得不作出?