我不想制作一个能量/卡路里计算器,但不能让它起作用:
<form name="EnergieForm">
Kies een activiteit <br />
<br>
<SELECT NAME="Activiteit" id="Activiteit">
<OPTION value="11" id="Fietsen">Fietsen (11 kcal per minuut)</OPTION>
<OPTION value="9" id="Joggen">Joggen (9 kcal per minuut)</OPTION>
<OPTION value="10" id="Voetballen">Voetballen (10 kcal per minuut)</OPTION>
<OPTION value="3" id="Tv-workout">Tv-workout zoals yoga of stretchen (3 kcal per minuut)</OPTION>
<OPTION value="7" id="Paardrijden">Paardrijden (7 kcal per minuut)</OPTION>
</SELECT><br />
Hoeveel minuten heeft u deze activiteit gedaan?<br />
<input type="text" name="Aantalminuten" size="20"><br />
<input type="button" value="Bereken de calorieën" onClick="berekeningEnergie()"> <input type="reset" value="Reset" /><br />
<br>
Aantal verbrande calorieën: <input type="text" name="betekenis" size="20"><br />
</form>
这是我的表格,这是我的JS:
function berekeningEnergie() {
if (document.getElementById('Fietsen').value == "11") {
document.EnergieForm.betekenis.value = 11*document.EnergieForm.Aantalminuten.value;
}
else if (document.getElementById('Joggen').value == "9") {
document.EnergieForm.betekenis.value = 9*document.EnergieForm.Aantalminuten.value;
}
else if (document.getElementById('Voetballen').value == "10") {
document.EnergieForm.betekenis.value = 10*document.EnergieForm.Aantalminuten.value;
}
else if (document.getElementById('Tv-workout').value == "3") {
document.EnergieForm.betekenis.value = 3*document.EnergieForm.Aantalminuten.value;
}
else if (document.getElementById('Paardrijden').value == "7") {
document.EnergieForm.betekenis.value = 7*document.EnergieForm.Aantalminuten.value;
}
我知道JS并不完整,但我无法让它发挥作用。 你能帮帮我吗?
答案 0 :(得分:1)
您的代码有很多问题:
1)您的onclick
属性有GetInventory()
,您的功能名为berekeningEnergie
。我想你的意思是onclick="berekeningEnergie()"
。
2)您需要通过查看option
标记的selectedIndex
属性来检查选择了哪个select
,以确定选择了哪个项目,此时您正在检查每个项目选项没有意义。
3)我建议您在表单标记中添加id="EnergieForm"
并使用getElementById
进行选择。你引用它的方式有点陈旧。这是一个最佳实践/惯用问题,不一定是功能问题。