Запрос на подтверждение и ввод в JavaScript
Раз мы уже знаем, как что-то вывести в JavaScript, давайте взглянем на два способа ввода. Возможно, ни один из них широко не используется, но они могут быть просто использованы для знакомства с основами.
Prompt. Запрос
Первый из них называется prompt. Он показывает всплывающее окно с текстом, который мы передаем первым параметром, и полем ввода, которое пользователь может заполнить. Когда пользователь нажмет OK, функция prompt() вернет введенное значение. Далее в этом примере мы используем метод document.write, чтобы заменить содержимое html-страницы нашим текстом.
examples/js/prompt.html
<script> var name = prompt("Your name:", ""); document.write("Hello ", name); </script>Try!
Текстовое поле будет предварительно заполнено значением второго параметра. Это может быть очень полезно, если бы мы хотели, чтобы пользователь отредактировал какое-нибудь значение. Можно заполнить поле старым значением.
examples/js/edit.html
<script> var name = prompt("Please correct your e-mail address:", "foo@bar.co"); document.write("Your e-mail address is ", name); </script>Try!
В другом случае, если пользователь нажмет cancel или клавишу ESC, функция prompt() вернет null.
Confirm. Подтверждение
Это всплывающее окно на самом деле не метод ввода. Оно позволяет разработчику задать вопрос и получить ответ - Да/Нет. Вызов функции confirm() приведет к появлению всплывающего окна с заданным текстом и двумя кнопками. Если пользователь нажмет OK, функция confirm() вернет true, если нажмет cancel или клавишу ESC, тогда функция вернет false.
Конечно, для понимания смысла, вы должны знать, что обозначают true и false, и что делает эта конструкция if - else. Если у вас уже есть какой-то опыт программирования, тогда, вероятно, вы уже поняли код, но даже если и нет, то сможете разобраться.
Этот код может быть описан следующим предложением:
Если "подтверждение" вернуло true, тогда напечатать "Hello World", иначе напечатать "OK, I won't print it."
Или лучше вот так:
Если пользователь нажал "ОК", когда мы спросили "Shall I print Hello World?", тогда напечатать "Hello World", иначе напечатать "OK, I won't print it."
examples/js/confirm.html
<script> if (confirm("Shall I print Hello World?")) { document.write("Hello World"); } else { document.write("OK, I won't print it."); } </script>Try!

Published on 2015-02-22