ProgrammerBook.ru: Обратите внимание, что

  1. данный документ является переводом документа «Fill-Out Forms» (The INPUT fields);
  2. данный документ может содержать неточности, опечатки и ошибки перевода;
  3. официальным документом по данной тематике является оригинальный документ на английском языке, расположенный на сайте W3C.

INPUT поля

Допустимый Контекст: %Body.Content
Модель Содержимого: Пусто!

Элемент INPUT используется для указания широкого спектра различных видов полей ввода в пределах HTML-форм. Атрибут TYPE определяет тип поля.

Однострочные текстовые поля (type=text)

Они используются для ввода коротких текстовых строк таких, как имена людей, номеров и дат. Видимую ширину поля, рассчитываемую в символах, можно задать с помощью атрибута SIZE. При использовании переменной шага шрифта, атрибут SIZE задаёт ширину в en единицах (половина размера точки). Пользователю следует предоставить возможность вводить больше, с помощью горизонтальной прокрутки содержимого поля, по мере необходимости. Атрибут MAXLENGTH может быть использован для указания максимального количества символов, разрешённых для строки.

Если атрибут TYPE отсутствует, то предполагается, что элемент INPUT будет однострочным текстовым полем. Атрибут NAME используется для идентификации поля, когда содержимое формы преобразуются в список имя/значение. Поле VALUE может быть использовано для инициализации текстовой строки. Могут быть использованы символьные сущности, включая диакритические символы в этой строке.

Примечание: Для создания многострочных текстовых полей ввода используйте элемент TEXTAREA.

Поле ввода пароля (type=password)

Это то же самое, что и однострочные текстовые поля, за исключением того, что вместо каждого введённого символа показывается теневой символ, например, звёздочка или символ пробела. Пользователь может видеть то, сколько символов было напечатано, но не то, что было напечатано.

Флажки (type=checkbox)

Флажок имеет два состояния: выбран и не выбран. Его пара имя/значение оказывается в переданных данных только при его выборе. Флажки используются для логических атрибутов. Они также могут быть использованы для атрибутов, которые могут принимать несколько значений одновременно. В этой ситуации репрезентируется флажок для каждого дополнительного значения, с тем же именем, что и каждый из этих флажков. Невыбранные флажки не оказываются в представленных данных. Как NAME, так и VALUE являются обязательными для флажков. Для инициализации флажка в выбранное состояние, указывают атрибут CHECKED. Альтернатива флажкам обеспечивается с помощью элемента SELECT с множественным выбором из меню.

Переключатели (type=radio)

Подходят для атрибутов, которые могут принимать одно значение из множества альтернатив. Всем переключателям относящимся к одной и той же группе следует присваивать одно и то же имя. Только выбранный переключатель в группе генерирует пару имя/значение в отправляемых данных. Как NAME, так и VALUE являются обязательными для переключателей. Для инициализации переключателя в его выбранное состояние, указывают атрибут CHECKED. Альтернатива переключателям обеспечивается с помощью элемента SELECT с одиночным выбором из меню.

Ползунки (type=range)

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

    <input name=rating type=range min=1 max=10>

Если либо нижняя, либо верхняя граница представляет собой действительное число, то диапазон является действительно-числовым, в противном случае он ограничивается только целочисленными значениями. Атрибут VALUE может быть использован для инициализации ползунка. Значение, лежащее за пределами указанного диапазона является ошибочным. Значением по умолчанию является среднее значение между нижним и верхним пределами.

Надпись на Изображении (type=scribble)

Эти поля позволяют пользователю писать с помощью указывающего устройства (например, мыши или пера) поверх заранее заданного изображения. Изображение определяется в виде URI-адреса с помощью SRC атрибута. Если агент пользователя не может отображать изображения или не может предоставить пользователям возможность писать на изображении, то поле следует рассматривать как текстовое поле. Атрибут VALUE может быть использован для инициализации текстового поля для этих пользователей. Он игнорируется, когда агент пользователя обеспечивает поддержку надписей на изображении.

Прикрепление Файлов (type=file)

Позволяет пользователям прикрепить один или несколько файлов, которые будут переданы вместе с содержимым формы. Атрибут ACCEPT может быть использован для указания разделённого запятыми списка MIME-типов содержимого. Они используются для ограничения типов файлов, которые могут быть прикреплены к форме. Например:

    <input name=pictures type=file accept="image/*">

В этом примере производится ограничение файлов, которые должны соответствовать «image/*», т.е. зарегистрированным MIME-типам изображения. Для Windows агентов пользователей, предполагается, что поля прикрепления файлов отображают имя последнего прикреплённого файла, с возможностью открытия диалогового файлового окна для просмотра полного списка прикреплённых файлов. Принимает атрибут, а затем действует, чтобы указать фильтр в списке кандидатов в прикрепляемые файлы.

Скрытые поля (type=hidden)

Поле не будет представляться пользователю, но при этом содержимое поля передаётся вместе с отправляемой формой. Это значение может быть использовано для передачи информации о состоянии взаимодействия клиент/сервер, например, идентификатора транзакции. Эти поля необходимы, поскольку HTTP-серверы не сохраняют информацию о состоянии от одного запроса к другому.

Кнопка отправки (type=submit)

Это кнопки, при нажатии которых происходит отправка данных формы. Вы можете использовать атрибут VALUE для предоставления не редактируемой метки, которая будет отображаться на кнопке. Метка по умолчанию зависит от конкретного приложения. С помощью атрибута SRC так же может быть определена графика для кнопки отправки.

Кнопка отправки, как правило, не вносит никакого вклада в отправляемые данные. Исключение составляют случаи, когда поле содержит атрибут NAME, в этом случае, значения атрибутов имени и значения полей так же отправляются вместе с данными. Данная особенность может быть использована для того, чтобы определить, какую кнопку отправки нажал пользователь.

Поля изображений (type=image)

Они действуют как кнопки отправки, но при этом они являются изображением, на которое нажимает пользователь. Изображение определяется с помощью атрибута SRC.

Следует ли нам поэтапно отказаться от этого элемента, в пользу использования SUBMIT? Для этого нам необходимо будет убедиться в том, что кнопка отправки является изображением, определённым с помощью SRC, на которое нажимает пользователь.

Кнопки сброса (type=reset)

При нажатии кнопки сброса, поля формы сбрасываются до их определённых начальных значений. Метка отображаемая на кнопке может указываться так же, как и для кнопки SUBMIT. Кроме того, так же может быть использован атрибут SRC для указания графики.


Допустимые Атрибуты для INPUT элемента

ID
SGML-идентификатор используется в качестве цели для гипертекстовых ссылок или для именования отдельных элементов в присоединённых таблицах стилей. Идентификаторы NAME лексем должны быть уникальными в рамках текущего документа.
LANG
Это одна из кратких меток ISO стандарта языка, например «en.uk» для варианта английского языка используемого в Соединённом Королевстве. Он может быть использован обработчиками при выборе конкретного языкового варианта кавычек, лигатур, правил переноса и так далее. Атрибут языка состоит из двухбуквенного кода языка, соответствующего стандарту ISO 639, в случае необходимости, за которым следует точка и двухбуквенный код страны, соответствующий стандарту ISO 3166.
CLASS
Это разделённый пробелами список SGML NAME лексем, которые используются для именования подклассов тега. Например, <P CLASS=STANZA.COUPLET> определяет абзац, который действует как куплет в строфе. По соглашению, имена классов интерпретируются иерархически, с самого общего класса слева до наиболее специфичного справа, где классы разделены точкой. Атрибут CLASS чаще всего используется для прикрепления другого стиля к некоторому элементу, но это является рекомендацией, чтобы практические имена классов были выбраны на основе семантики элемента, так как это позволит использование для других целей, таких как ограничение поиска по документам путём сопоставления имён классов элемента. Соглашения по выбору имён классов выходят за рамки данной спецификации.
TYPE
Определяет тип поля как один из: TEXT, PASSWORD, CHECKBOX, RADIO, RANGE, FILE, SCRIBBLE, HIDDEN, SUBMIT или RESET. Значением по умолчанию является TEXT. Значением атрибута является SGML имя лексемы, которое не чувствительно к регистру.
NAME
Предоставляет строку символов, используемую в качестве имени поля при отправке данных формы. Некоторые поля могут иметь одинаковые имена, например группа переключателей или флажков. Имя не чувствительно к регистру.
VALUE
Это строка символов или число, которое используется для инициализации текстовых и скрытых полей, а так же поля ползунка.
DISABLED
Если он присутствует, то поле следует представлять в обычном режиме, но без возможности изменения пользователем. При представлении следует делать намёк о том, что поле отключено, например, с помощью серого цвета текста, изменения цвета фона или чего-то аналогичного.
ERROR
Этот атрибут определяет сообщение об ошибке, объясняющее причину того, почему текущее значение поля является некорректным. Если этот атрибут отсутствует, то данное поле можно считать корректным. Агентам пользователей рекомендуется предоставлять некий сигнал о том, что поле содержит ошибку.
CHECKED
Присутствие этого атрибута указывает на то, что переключатель или флажок следует инициализировать в выбранное состояние.
SIZE
Определяет видимую ширину текстового поля или поля ввода пароля. Для шрифтов с фиксированным размером символов, атрибут размера определяет максимальное количество видимых символов, в то время как для шрифтов с различным размером символов, атрибут определяет ширину в en единицах (половина размера точки).
MAXLENGTH
Задает максимальное количество символов, допустимых для текстового поля и поля ввода пароля.
MIN
Это целое или вещественное число определяющее нижнюю границу для поля ползунка.
MAX
Это целое или вещественное число определяющее верхнюю границу для поля ползунка.
ACCEPT
Разделённый запятыми список MIME-типов содержимого, используемый для ограничения типов файлов, которые могут быть прикреплены к форме с помощью поля прикрепления файлов.
SRC (Источник)
Атрибут SRC определяет URL-адрес изображения, используемого в качестве фона таких полей как SCRIBBLE, IMAGE, SUBMIT или RESET. Его синтаксис аналогичен синтаксису атрибута HREF тега <A>.
MD
Определяет сообщение дайджеста или криптографическую контрольную сумму для соответствующей графики, определённой в атрибуте SRC. Он используется, когда вы хотите быть уверены в том, что изображение действительно является тем самым, которое и было задумано автором, и не было изменено каким-либо образом. Например, MD="md5:jV2OfH+nnXHU8bnkPAad/mSQlTDZ", определяет контрольную сумму MD5, закодированную в виде base64 строки символов. Атрибут MD, как правило, допускается для всех элементов, которые поддерживают ссылки с использованием URI.
ALIGN
Этот атрибут применяется только к полям с фоновыми изображениями, т.е. для SCRIBBLE, IMAGE, SUBMIT или RESET. Он предназначен для обеспечения того же управления позиционированием, что и для элемента IMG. Атрибут ALIGN принимает значения TOP, MIDDLE или BOTTOM, которые определяют, что верхнюю, среднюю или нижнюю часть поля следует привести в соответствие с базовой линией текстовой строки, в которой появляется элемент INPUT.

При ALIGN=LEFT, поле будет плавать снизу и выравниваться по текущему левому краю, а весь последующий текст будет окружать его с правой стороны поля. Аналогично для ALIGN=RIGHT, поле будет выравниваться по текущему правому краю, а текст будет обтекать его слева.