【发布时间】:2023-03-14 12:05:01
【问题描述】:
所以我正在构建这副卡片,但是当我在 HTML 的文本区域中键入 af 数字时,它不会从数组“hjerter”返回卡片 应该从已经输入到 HTML 文本区域的数字中选择,然后在 HTML 页面上显示给定的卡片。
function visKort() {
var x = document.getElementById("Nr").value;
var hjerter = ['h-ace', 'h2', 'h3', 'h4', 'h5', 'h6', 'h7', 'h8', 'h9', 'h10', 'h-jack', 'h-queen', 'h-king'];
var kort = "";
var i;
for (i = 0; i < hjerter.length; i++) {
if (x == hjerter[i]) {
} else if (i > 0) {
break;
}
kort += "Nr " + x + "<br>" + "Dit kort er " + hjerter[i];
}
document.getElementById("vis_kort").innerHTML = kort;
}
<center>
<main>
<h1>Kortspil til opgave 2</h1>
<h2>Indtast nr på kort<br></h2>
<textarea id="Nr">
</textarea>
<p></p>
<button type="button" onclick="visKort()">Vis mit kort</button> <br>
<p id="vis_kort"><br>
</main>
</center>
【问题讨论】:
-
if else if应该做什么?第一个if仅在 textarea 包含字符串h-ace时才匹配(然后什么也不做),第二个将在第一轮之后中断循环。因此它总是会在第一轮打印Nr [whatever you've entered] <br> Dit kort er h-ace,然后停止循环。
标签: javascript html arrays for-loop if-statement