これは数学の問題を発生させるif文を実行します。ユーザーに入力したい質問の数を入力しますが、実行すると、ユーザーが最初に答えるのを待つのではなく、質問をしてinnerHTMLをクリアします。すぐにそれらを生成し、if文を使って質問に正しく答えるまで待つのをやめる方法はありますか?このスクリプトが複数回実行されずに、スクリプトが応答されるまで待機するにはどうすればよいですか?
if(equation == "Addition(+)"){
number = document.getElementById('problems').value;
for(var i = 0; i<number; i++){
var inputedanswer =
document.getElementById('answerfield').value;
//Creates addition problem
a = Math.floor((Math.random() * 20) + 1);
b = Math.floor((Math.random() * 20) + 1);
if(inputedanswer == null){
//Trying to make it run only once
var answer = (parseInt(a) + parseInt(b));
//Creates question using the Math Random above
var p = document.createElement('p');
var text = document.createTextNode(a + " + " + b + " = ")
p.appendChild(text);
document.getElementById('question').appendChild(p);
//Creates radio buttons for answers
var select = document.createElement('input');
var submit = document.createElement('button');
document.getElementById('answerfield').appendChild(select);
document.getElementById('submit').appendChild(submit);
submit.innerHTML = "Check Answer";
//Submitting answer and checks if it is correct
submit.onclick = function(){
if(select.value != answer){
alert("I am sorry but that is not the correct answer, Please try again!");
}
else{
alert("That's correct!");
document.getElementById('field').innerHTML = "";
//Ask Erickson
}
}
}
}
}
をそれらを呼び出します。今すぐあなたの問題の完全な文脈なしで助けてください。動作するコードスニペットを作成してみてください。 https://stackoverflow.com/help/mcve –
ユーザーが最初の質問に答えるときに2番目の質問が表示されたら、2番目の質問に3番目の質問が表示されたら...など? –