У меня возникла проблема при попытке перебрать массив вопросов правильно, когда я пытаюсь записать их в документ.
Первый блок кода, который я включил ниже, по сути, является тем, чего я пытаюсь достичь, за исключением того, что я хотел бы сделать это без подсказок.
Я создал массив с именем question[]
, который хранит 3 строки вопроса прямо сейчас. Цикл for с prompt(question[i])
принимает каждый вопрос в question[]
и предлагает пользователю ответить на него. Затем он отправляет это значение в другой массив, который я создал и который называется character[]
.
Я пробовал пару разных методов, чтобы сделать это, используя метод .append, но безрезультатно, к сожалению, и я думаю, что я могу определить свои подводные камни в нескольких различных областях.
В последних блоках кода я пытался добавить вопросы из question[]
на страницу, а затем попросить документ прослушать изменение входного значения или нажатие клавиши Enter (клавиша 13).
Кроме того, пусть будет известно, что я обернул все это в следующую функцию:
$(document).ready(function(){...}
var question = [
'<br> What is your name?',
'<br> Are you man or woman?',
'<br> What is your class?'
];
var character = [];
//For Loop Using prompt()
for (i = 0; i < question.length; i++) {
var input = prompt(question[i]);
character.push(input);
alert(character[i]);
}
//For Loop Attempting to Use HTML '<input>'
<input id="user-input" placeholder="Type Here"></input>
for (i = 0; i < question.length; i++) {
$('#game-text').append(question[i]);
$('#user-input').onchange = function() {
var userInput = input.value;
character.push(userInput);
}
}
OR
for (i = 0; i < question.length; i++) {
$('#game-text').append(question[i]);
$(document).keypress(function(key){
if(key.which === 13 && $('#user-input').is(':focus')) {
var input = $('#user-input').val();
character.push(input);
}
})
Вместо того, чтобы цикл отображал один вопрос за раз, у меня будет цикл, отображающий все вопросы сразу, и я не могу, кажется, принять его и при вводе пользователем.
Я действительно не уверен, как подойти или какие именно знания мне не хватает, так как я не могу найти ответ на этот вопрос онлайн.
Опять же, чтобы подвести итог, мой вопрос заключается в следующем:
Как я могу задать вопрос из массива на самой странице, заставить страницу ждать ответа, сохранить этот ответ в другом массиве, а затем делать это снова, пока я не пройду весь массив?
Большое вам спасибо за ваше время! Буду очень признателен за помощь!