Phy*_*ool 11 javascript select if-statement
我可以使用 javascript if/else 函数来更改表单的选择选项吗?我不想使用 CSS 来隐藏/显示不同的下拉菜单,所以这是我想出的:
function getType() {
var x = document.getElementById("food").value;
var items;
if (x === "fruit") {
items = "Apple" || items = "Oranges" || items = "Bananas";
else {
items = "Eggplants" || items = "Olives"
}
document.getElementById("pickone").value;
}
Run Code Online (Sandbox Code Playgroud)
<input type="text" id="food">
<select id="pickone">
<option id="1"></option>
<option id="2"></option>
</select>Run Code Online (Sandbox Code Playgroud)
我似乎找不到任何有关如何执行此操作的文档,因此任何帮助都会很棒。
mes*_*ill 12
您可以为 附加一个字符串,options然后将其设置为innerHTML您的选择字段:
function getType() {
var x = document.getElementById("food").value;
var items;
if (x === "fruit") {
items = ["Apple", "Oranges", "Bananas"];
} else {
items = ["Eggplants", "Olives"]
}
var str = ""
for (var item of items) {
str += "<option>" + item + "</option>"
}
document.getElementById("pickone").innerHTML = str;
}
document.getElementById("btn").addEventListener("click", getType)Run Code Online (Sandbox Code Playgroud)
<input type="text" id="food">
<button id="btn">click</button>
<select id="pickone">
</select>Run Code Online (Sandbox Code Playgroud)
您的逻辑不太正确,特别是在您尝试
items = "Apple" || items = "Oranges" || items = "Bananas";
使用上述语句执行此操作时,您说的itens是 Apple OR Oranges OR Bananas,一次只有一个……您将需要一组元素,如下所示:
var itens = ["Apple", "Oranges", "Bananas"];
然后,您需要遍历它以将它们添加到选择中,如下所示:
var itens = ["Apple", "Orange", "Banana"];
var selectElem = document.getElementById("mySelect");
for (var i = 0; i < itens.length; i++){
var item = itens[i];
var element = document.createElement("option");
element.innerText = item;
selectElem.append(element);
}Run Code Online (Sandbox Code Playgroud)
<select id="mySelect"></select>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23915 次 |
| 最近记录: |