FORM (ФОРМА) - заполняемая форма

Цель

Чтобы представить заполняемую форму, используемую для таких действий пользователя, как регистрация, упорядочение пользователя или формирование запроса. Формы могут содержать широкий диапазон приемов разметки HTML, включая такие виды полей форм, как однострочные или многострочные текстовые поля, группы радиокнопок, переключатели и меню.

Типичное представление

Нечто подобное заполняемой на бумаге форме.

Основной синтаксис

<FORM ACTION="URL">
содержание формы, включая элементы INPUT и, возможно, элементы TEXTAREA и SELECT
</FORM>

Возможные атрибуты

имя атрибутавозможные значениясмысл атрибутапримечания
ACTIONURLадрес сервера, который использует формасервер HTTP или URL
METHODGET, POSTметод передачи данных, полученных от пользователя, на серверпо умолчанию - GET
ENCTYPEстрокамеханизм, используемый для кодирования содержимого формыпо умолчанию приложение /x-www-form-url-кодирование

Детали создания форм специфицированы в RFC 1867.

Допустимый контекст

Блоковый контейнер.

Содержимое

То, что разрешено в пределах элемента BODY (т.е. заголовки, текстовые и блоковые элементы, элементы ADDRESS), за исключением того, что нельзя использовать в пределах элементов FORM.

Есть некоторые элементы, которые могут появиться только в пределах элемента FORM. В частности:

INPUT
текстовое одностроковое поле, поля пароля, переключатели, радиокнопки, кнопки установки и перезагрузки, скрытые поля, кнопки выгрузки файла, кнопки изображений и т.д.
SELECT
меню единичного или множественного выбора
TEXTAREA
многострочное текстовое поле.

Примеры

Пример, иллюстрирующий структуры спецификации формы для простого случая. Весьма вероятно, что это не будет работать. Смотрите примечание ниже.

Пример FORM-1.html:


<FORM ACTION="mailto:Jukka.Korpela@hut.fi" METHOD=POST> 

<TEXTAREA ROWS=5 COLS=72 NAME=Comments></TEXTAREA> 

<P> 

<INPUT TYPE=SUBMIT VALUE=Send> 

</FORM> 

Следующий, более сложный пример, включает в дополнение к области свободного ввода текста меню выбора.

Пример FORM-2.html:


<FORM ACTION="mailto:Jukka.Korpela@hut.fi" METHOD=POST> 

Please tell your opinion about the overall quality of this document: 

<SELECT NAME=evaluation> 

<OPTION>Very poor 

<OPTION>Rather poor 

<OPTION>Average 

<OPTION>Rather good 

<OPTION>Very good 

</SELECT> 

<P> 

You can also be more specific by writing a few comments: 

<TEXTAREA NAME=Comments ROWS=5 COLS=72></TEXTAREA> 

<P> 

<INPUT TYPE=SUBMIT VALUE=Send> 

</FORM> 

Примечания

В одном документе может быть несколько форм.

Для очень простых форм можно использовать элемент ISINDEX.

Хотя спецификации HTML 3.2 говорят, что атрибут ACTION предпочитается использованию mailto:, предоставляя легкий способ создания форм для управления информацией через e-mail, заметим, что эта способность поддерживается еще не везде. Например, код в нашем первом примере не работает в Netscape, так как он с самого начала использует свой внутренний e-mail-формирователь, игнорируя способ, которым была заполнена форма. Lynx же, например, в этом случае работает лучше. Вы должны принимать во внимание, что формируемое e-mail послание появляется в кодированной форме, хотя и не полностью нечитаемой. В случае, когда в приведенном примере 2 пользователь выбирает опцию Rather poor и печатает текст Too few ../../examples., содержимое послания будет выглядеть следующим образом :


evaluation=Rather+poor&Comments=Too+few+../../examples.