Внутри <FORM> ... </FORM>, может присутствовать любое количество тэгов SELECT, свободно
перемешанных с другими HTML элементами (включая INPUT и TEXTAREA элементы) и текстом (но не
дополнительных элементов FORM). Тэг SELECT во многих графических клиентах представляется как
меню или список.
В отличие от INPUT, SELECT имеет открывающий и закрывающий тэги. Внутри оператора SELECT
разрешена только последовательность тэгов OPTION, за каждым из которых следует некоторое
количество простого текста (без HTML выражений), например:
<SELECT NAME="a-menu">
<OPTION> First option.
<OPTION> Second option.
</SELECT>
Атрибуты оператора SELECT следующие:
- NAME
- символическое имя для этого SELECT элемента. Это поле должно присутствовать, т.к. оно
используется при посылке запроса (аналогично оператору INPUT).
- SIZE
- если SIZE равен 1 или если этот атрибут опущен, по умолчанию SELECT будет представлен как
меню опций Motif. Если SIZE = 2 или более, SELECT будет представлен как окно выбора; значение
SIZE тогда будет определять, сколько элементов списка будут видны.
- MULTIPLE
- если присутствует (нет значения), задает, что SELECT должен позволять множественный
выбор из списка. Наличие MULTIPLE принуждает SELECT быть представленным как список выбора,
вне зависимости от значения SIZE.
Атрибуты OPTION следующие:
- SELECTED задает, что эта опция выбрана по умолчанию. Если SELECT позволяет множественный
выбор (с помощью атрибута MULTIPLE ), как SELECTED могут быть помечены несколько опций.
Тэг TEXTAREA может быть использован для расположения многострокового поля ввода с
необязательным содержимым по умолчанию в форме. Атрибуты тэга TEXTAREA следующие:
- NAME символическое имя поля ввода.
- ROWS число строк в поле ввода( высота).
- COLS число столбцов в поле ввода (ширина).
TEXTAREA имеет полосы прокрутки, так что может быть введено любое количество текста.
Элемент TEXTAREA требует и открывающий и закрывающий тэги. TEXTAREA без содержания по
умолчанию выглядит примерно так:
<TEXTAREA NAME="foo" ROWS=4 COLS=40></TEXTAREA>
TEXTAREA с содержанием по умолчанию выглядит так:
<TEXTAREA NAME="foo" ROWS=4 COLS=40>
Default contents go here.
</TEXTAREA>
Содержание по умолчанию должно быть строгим ASCII текстом. Символы перевода строки
воспринимаются (так что в примере выше до и после текста "Default contents go here." будет пустая
строка).
Для метода GET
Когда нажимается кнопка submit, содержимое формы будет добавлено к URL в следующей форме:
action?name=value&name=value&name=value
(здесь "action" - URL, заданное атрибутом ACTION в тэге FORM, или URL текущего документа, если
атрибут ACTION не был задан).
Нестандартные символы в примерах "name" или "value" будут опущены, при этом имеются в виду
также "=" and "&". Это означает, что включения "=", которые разделяют имена и значения (names и
values), и включения "&", которые разделяют пары name/value, не опускаются.
Для полей ввода текста и пароля, значением будет то, что введет пользователь. Если пользователь
оставит это поле пустым, значение value также будет пустым , но в строке запроса будет присутствовать
фрагмент "name=".
Для кнопок типа checkbox и radio button, значение value определяется атрибутом VALUE в том
случае, когда кнопка отмечена. Неотмеченные кнопки при составлении строки запроса игнорируются
целиком. Несколько кнопок типа checkbox могут иметь один атрибут NAME (и различные VALUE), если
это необходимо. Кнопки типа radio button предназначены для того, чтобы вести себя по принципу "одна из
всех" и должны иметь одинаковый атрибут NAME и различные атрибуты VALUE.
Для метода POST
Содержимое формы кодируется точно как для метода GET (см. выше), но вместо добавления содержимого формы к URL, заданной атрибутом формы ACTION, в качестве запроса , содержимое посылается блоком данных как часть операции POST. Если присутствует атрибут ACTION, то значение
URL, которое там находится, определяет, куда послать этот блок данных. Этот метод особенно рекомендуется при посылке больших блоков данных.