【发布时间】:2020-05-14 05:21:29
【问题描述】:
所以我是 html/javascript 的新手,我正在尝试弄清楚如何使我的下拉菜单正常工作。外观明智,它看起来不错,但是当我单击任何选项时,我试图弄清楚如何根据我选择的选项更改页面的布局。因此,例如,如果我选择选项 1 并单击“选择”按钮,我希望出现常规文本,显示“您单击了选项 1”。我试图实现它,但它什么也没做。如果我在没有选择选项的情况下单击“选择”,则会弹出一条错误消息。我真的很感激一些帮助或朝着正确的方向前进。
options.html:
<html>
<head>
<title>Welcome</title>
</head>
<body onload="init()">
<div><h1>Welcome</h1></div><br />
<div class="dropdown">
<form>
<select name="list" id="list" accesskey="target">
<option value="none">Pick an option</option>
<option value="one">Option 1</option>
<option value="two">Option 2</option>
<option value="three">Option 3</option>
</select>
<input type=button value="Select" onclick="goToNewPage()" />
</form>
</div>
</div>
<script src="options.js"></script>
<link rel="stylesheet" href="dropdown.css">
</body>
</html>
options.js:
function optionClicked(){
let userPicked = document.getElementById("dropdown").value;
if(userPicked == 'one'){
div.innerHTML = "You clicked option 1";
}else if(userPicked == 'two'){
div.innerHTML = "You clicked option 2.";
}else if(userPicked == 'three'){
div.innerHTML = "You clicked option 3.";
}else{
alert("You must pick an option.");
}
}
【问题讨论】:
-
我看到的第一件事是你得到
ElementById("dropdown")其中dropdown是一个类名 -
第二件事你的
init()函数在哪里?我看到你在打电话,但代码在哪里。另外,虽然这可能是相关的,但我没有看到你在哪里称呼你的optionClicked()。 -
您的
onclick函数也需要是正确的名称。getElementById("list").value应该是正确的userPicked -
div为div.innerHTML存储在哪里?
标签: javascript html button drop-down-menu dropdown