好的,所以我一直在尝试用JavaScript进行随机测验,但我无法弄清楚如何制作答案部分。我有一个包含问题和答案的随机洗牌数组。我想弄明白如何在用户在提示中输入正确的答案时,它会通知用户他们认为它是正确的或不正确的。
<html>
<head>
<script language = "javascript">
var QandA = [
{ "Q":"2 + 2 = ?", "A":"4" },
{ "Q":"2 + 3 = ?", "A":"5" },
{ "Q":"5 + 5 = ?", "A":"10" },
{ "Q":"3 + 3 = ?", "A":"6" },
{ "Q":"6 + 5 = ?", "A":"11" },
{ "Q":"6 + 12 = ?", "A":"18" }
];
var question = QandA[0].Q;
var answer = QandA[0].A;
var i = QandA.length, j, temp;
while(--i > 0){
j = Math.floor(Math.random() * (i+1));
temp = QandA[j];
QandA[j] = QandA[i];
QandA[i] = temp;
}
for (var i=0; i<6; i++)
{
var questions = prompt(QandA[i].Q);
}
document.write("<p>");
for (var i=0; i<6; i++)
{
console.log(QandA[i].A);
}
</script>
</body>
</html>
答案 0 :(得分:0)
嗯,您正在提示他们提供答案,并且您将其存储到问题中,因此请插入条件以根据消息是否正确回答来提醒消息。
JSFiddle用于测试目的。
for (var i=0; i<6; i++)
{
var questions = prompt(QandA[i].Q); // you're storing the user's answer in here
if(questions == QandA[i].A) // check if their answer matches yours
alert("Correct! Next question..."); // alert for correct
else
alert("Wrong... Next question..."); // alert for wrong
}
当然,根据代码的去向,您可能希望将带有打印反馈的 alert 切换为HTML元素,并使用输入字段提示。在这种情况下,您将有一个测验问题的部分或段落块以及答案的输入字段。