现在,在你告诉我这是一个过于质疑的问题之前,我已经尝试过查看这个问题的多个版本,当我尝试他们的解决方案时,它们都不适合我。所以我会尝试直接帮助。
无论如何,我有一个下拉列表,其中包含美国各州,每个州都对应一项能源成本。我试图使其成为当用户选择状态时,Javascript代码检测到更改,找到所选选项的值,并根据该选择设置变量(在switch语句中声明)。
然而,问题是,无论我做什么,它都行不通。我不知道我是不是拼错了某些东西,或者我需要写一些我不了解的东西,但不管我做错了什么,它都行不通
这是HTML:
<div class="question">
<p><b>In which U.S. state are you currently living in?</b></p>
<select id="stateselect">
<option value="choose" selected="selected">[none]</option>
<option value="al">Alabama</option>
<option value="ak">Alaska</option>
<option value="az">Arizona</option>
<option value="ar">Arkansas</option>
/* Removed most of the options for sake of space*/
</select>
</div>
和Javascript:
var energyCost;
var state = document.GetElementById('stateselect');
function getEnergyCost() {
switch (state.value) {
case 'choose':
energyCost = 0.00;
break;
case 'al':
energyCost = 0.13;
break;
case 'ak':
energyCost = 0.21;
break;
case 'az':
energyCost = 0.12;
break;
case 'ar':
energyCost = 0.10;
break;
/* Ditto */
}
}
state.addEventListener('change', getEnergyCost, false);
有人会介意给我一些帮助吗?谢谢!
注意:我需要简单的Javascript中的答案,而不是jQuery。
答案 0 :(得分:0)
您需要更改
"SELECT * FROM TABLE"
要
var state = document.GetElementById('stateselect');
var state = document.getElementById('stateselect');
中的get
上的首都使其无效。
答案 1 :(得分:0)
你有一个简单的拼写错误。它是getElementById
,而不是getElementById
。