@inuboh

Как проверить текстовое поле на конкретную фразу?

Подскажите пожалуйста в такой ситуации!
Есть текстовое поле, в которое нужно ввести ответ на вопрос, и кнопка отправить!
Как средствами HTML и JavaScript сделать так, чтобы при нажатии на кнопку отправить, следующую страницу открывало только при правильном ответе, а если ответ неправильный, выдавало сообщение о неправильном ответе?
  • Вопрос задан
  • 323 просмотра
Решения вопроса 1
k12th
@k12th
console.log(`You're pulling my leg, right?`);
В форме делаете input[type="text"] и button[type="submit"]. На форму вешаете обработчик события submit, в нем берете у инпута value и проверяете его на правильность.
Если правильно, из обработчика делаете return true, если нет — event.preventDefault() (по этой ссылке пример того, чего вы хотите), показываете ошибку и return false.

Если проверка на правильность асинхронная (AJAX-запрос на сервер), то все будет посложнее, но основной принцип такой же — перехватываем submit и проверяем.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
zolt85
@zolt85
Программист
Даже не думайте делать этого на клиенте! Потому что я могу открыть код страницы и подсмотреть правильный ответ!
Ответ написан
По моему не получиться реализовать это только средствами HTML и JavaScript.
Я не знаток JavaScript, но..., как вы спрячете ответ от пользователя, его можно будет посмотреть в коде страницы?
Ответ написан
skipirich
@skipirich
проходил мимо
Вообще то идеальный вариант ajax запрос к серверу. Ну а если уж совсем неохота обрабатывать с помощью сервера и пофигу что пользователь может посмотреть исходный код страницы то, делаете что то типа этого
<input type="hidden" name="answer" id="answer" value="Правильный ответ">
Ну и само собой js обработчик при получении данных от пользователя сравнит полученное с тем что в hidden и примет решение.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы