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