В этом разделе мы рассмотрим базовые UI операции: alert, prompt и confirm, которые позволяют работать с данными, полученными от пользователя.
alert
Синтаксис:
alert(сообщение)
alert выводит на экран окно с сообщением и приостанавливает выполнение скрипта, пока пользователь не нажмет «ОК».
alert("Привет");
Окно сообщения, которое выводится, является модальным окном. Слово «модальное» означает, что посетитель не может взаимодействовать со страницей, нажимать другие кнопки и т.п., пока не разберется с окном. В данном случае - пока не нажмет на «OK».
prompt
Функция prompt принимает два аргумента:
result = prompt(title, default);
Она выводит модальное окно с заголовком title, полем для ввода текста, заполненным строкой по умолчанию default и кнопками OK/CANCEL.
Пользователь должен либо что-то ввести и нажать OK, либо отменить ввод кликом на CANCEL или нажатием ESC на клавиатуре.
Вызов prompt возвращает то, что ввел посетитель - строку или специальное значение null, если ввод отменен.
Как и в случае с alert, окно prompt модальное.
var years = prompt('Сколько вам лет?', 100);
alert('Вам ' + years + ' лет!')
defaultВообще, второй default может отсутствовать. Однако при этом IE вставит в диалог значение по умолчанию "undefined".
Запустите этот код в IE, чтобы понять о чем речь:
var test = prompt("Тест");
Поэтому рекомендуется всегда указывать второй аргумент:
var test = prompt("Тест", ''); // <-- так лучше
confirm
Синтаксис:
result = confirm(question);
confirm выводит окно с вопросом question с двумя кнопками: OK и CANCEL.
Результатом будет true при нажатии OK и false - при CANCEL(Esc).
Например:
var isAdmin = confirm("Вы - администратор?");
alert(isAdmin);
Особенности встроенных функций
Место, где выводится модальное окно с вопросом, и внешний вид окна выбирает браузер. Разработчик не может на это влиять.
С одной стороны — это недостаток, т.к. нельзя вывести окно в своем дизайне.
С другой стороны, преимущество этих функций по сравнению с другими, более сложными методами взаимодействия, которые мы изучим в дальнейшем — как раз в том, что они очень просты.
Это самый простой способ вывести сообщение или получить информацию от посетителя. Поэтому их используют в тех случаях, когда простота важна, а всякие «красивости» особой роли не играют.
Создайте страницу, которая спрашивает имя и выводит его.
Работать должно так: tutorial/intro/basic.html.
Решение: tutorial/intro/basic.html.
Резюме
alertвыводит сообщение.promptвыводит сообщение и ждет, пока пользователь введет текст, а затем возвращает введенное значение илиnull, если ввод отменен (CANCEL/Esc).confirmвыводит сообщение и ждет, пока пользователь нажмет «OK» или «CANCEL» и возвращаетtrue/false.
Комментарии
- Приветствуются комментарии, содержащие дополнения и вопросы по статье, и ответы на них.
- Если ваш комментарий касается задачи -- откройте её в отдельном окне и напишите там.
- Комментарии без смысла, с рекламой или не о статье вообще - удаляются.