Рекомендуем подписаться:

  Все выпуски  

Web-программирование - это просто!


Новое на сайте Программирование - это просто! (www.easyprog.ru):

В платном разделе

В бесплатном разделе

Web-программирование: "Java Script(JS): Взаимодействие с пользователем. Проверка данных перед отправкой формы. Продолжение."

 

На прошлом уроке мы разобрали, как проверять заполнение тактовых полей и переключателей. Теперь разберем выпадающие списки. Тут есть небольшая непонятна. Дело в том, что в нем уже выбран какой то элемент по умолчания и он как бы считается заполненным. Обычно делают так: элемент, выбранный по умолчанию, это приглашение что-то выбрать:

 

Web-программирование: "Java Script(JS): Взаимодействие с пользователем. Проверка данных перед отправкой формы. Продолжение."

 

При проверке смотрится, если это элемент по умолчанию (приглашение), то считается, что не заполнено. Вот пример:

<html>

    <head>

        <meta charset="UTF-8">

        <title>Урок 117. Java Script (JS): Проверка данных перед оправкой формы</title>

        <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">

            function validate(form) {

                if(form.colors.value=="no") {

                    alert("Выберите цвет!");

                    form.colors.focus();

                    return false;

                }

                return true;

            }

        </SCRIPT>

    </head>

    <body>

        <form name="myform" method="GET" action="script.html">

            Сюда что-нибудь введите <input type="text" name="something"></input><br>

            И выберите цвет (поле цвет обязательно для заполения)<br>

            Цвет: <SELECT Name="colors">

                <OPTION Value="no" SELECTED>Выберите цвет</OPTION>

                <OPTION Value="red">Красный</OPTION>

                <OPTION Value="yellow">Желтый</OPTION>

                <OPTION Value="green">Зеленый</OPTION>

                <OPTION Value="white">Белый</OPTION>

                <OPTION Value="black">Черный</OPTION>

            </SELECT>

            <input type="submit" value="OK" name="ok" ONCLICK="return validate(this.form)">

        </form>

    </body>

</html>

 

Обратите внимание, что тут еще и установка фокуса на элемент, который нуждается в заполнении: form.colors.focus();. После выдачи сообщения он автоматический активируется. Точно также можно сделать и с текстовый полем:

        <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">

            function validate(form) {

                if(!form.something.value) {

                    alert("Введите что-нибудь в текстовое поле!");

                    form.something.focus();

                    return false;

                }

                if(form.colors.value=="no") {

                    alert("Выберите цвет!");

                    form.colors.focus();

                    return false;

                }

                return true;

            }

        </SCRIPT>

 


В избранное