March 19

 Атрибут HTML Input form*

В этой главе описываются различные атрибуты form* для элемента HTML <input>

Атрибут form


Атрибут input form указывает форму, к которой принадлежит элемент <input>.

Значение этого атрибута должно быть равно атрибуту id элемента <form>, к которому он принадлежит.

Поле ввода, расположенное за пределами HTML-формы (но все же являющееся частью формы):

<form action="/action_page.php" id="form1"> <label for="fname">First name:</label> <input type="text" id="fname" name="fname"><br><br> <input type="submit" value="Submit"> </form>

<label for="lname">Last name:</label> <input type="text" id="lname" name="lname" form="form1">

Атрибут formaction


Атрибут input formaction указывает URL-адрес файла, который будет обрабатывать вводимые данные при отправке формы.

Примечание: Этот атрибут переопределяет атрибут action элемента <form>.

Атрибут formaction работает со следующими типами ввода: submit и image.

HTML-форма с двумя кнопками отправки и различными действиями:

<form action="/action_page.php"> <label for="fname">First name:</label> <input type="text" id="fname" name="fname"><br><br> <label for="lname">Last name:</label> <input type="text" id="lname" name="lname"><br><br> <input type="submit" value="Submit"> <input type="submit" formaction="/action_page2.php" value="Submit as Admin"> </form>

Атрибут formenctype


Атрибут input form enctype определяет, как данные формы должны быть закодированы при отправке (только для форм с method="post").

Примечание: Этот атрибут переопределяет атрибут enctype элемента <form>.

Атрибут formenctype работает со следующими типами ввода: submit и image.

Форма с двумя кнопками отправки. Первая отправляет данные формы в кодировке по умолчанию, вторая отправляет данные формы, закодированные как "multipart/form-data":

<form action="/action_page_binary.asp" method="post"> <label for="fname">First name:</label> <input type="text" id="fname" name="fname"><br><br> <input type="submit" value="Submit"> <input type="submit" formenctype="multipart/form-data" value="Submit as Multipart/form-data"> </form>

Атрибут formmethod


Входной атрибут formmethod определяет HTTP-метод для отправки данных формы на URL-адрес действия.

Примечание: Этот атрибут переопределяет атрибут method элемента <form>.

Атрибут formmethod работает со следующими типами ввода: submit и image.

Данные формы могут быть отправлены в виде переменных URL (метод="get") или в виде транзакции HTTP post (метод="post").

Примечания к методу "get":

Этот метод добавляет данные формы к URL-адресу в парах имя/значение
Этот метод полезен для отправки формы, когда пользователь хочет добавить результат в закладки
Существует ограничение на объем данных, которые вы можете поместить в URL-адрес (зависит от браузера), поэтому вы не можете быть уверены, что все данные формы будут переданы правильно
Никогда не используйте метод "get" для передачи конфиденциальной информации! (пароль или другая конфиденциальная информация будут видны в адресной строке браузера)


Примечания о методе "post":

Этот метод отправляет данные формы в виде транзакции HTTP post
Отправленные формы с помощью метода "post" не могут быть добавлены в закладки
Метод "post" более надежен и безопасен, чем "get", а "post" не имеет ограничений по размеру

Форма с двумя кнопками отправки. Первая отправляет данные формы с помощью метода="get". Вторая отправляет данные формы с помощью метода="post".:

<form action="/action_page.php" method="get"> <label for="fname">First name:</label> <input type="text" id="fname" name="fname"><br><br> <label for="lname">Last name:</label> <input type="text" id="lname" name="lname"><br><br> <input type="submit" value="Submit using GET"> <input type="submit" formmethod="post" value="Submit using POST"> </form>

Атрибут formtarget


Атрибут input form target указывает имя или ключевое слово, указывающее, где отображать ответ, полученный после отправки формы.

Примечание: Этот атрибут переопределяет атрибут target элемента <form>.

Атрибут form target работает со следующими типами ввода: submit и image.

Форма с двумя кнопками отправки, с разными целевыми окнами:

<form action="/action_page.php"> <label for="fname">First name:</label> <input type="text" id="fname" name="fname"><br><br> <label for="lname">Last name:</label> <input type="text" id="lname" name="lname"><br><br> <input type="submit" value="Submit"> <input type="submit" formtarget="_blank" value="Submit to a new window/tab"> </form>

Атрибут formnovalidate


Атрибут input formnovalidate указывает, что элемент <input> не должен проверяться при отправке.

Примечание: Этот атрибут переопределяет атрибут novalidate элемента <form>.

Атрибут formnovalidate работает со следующими типами ввода: submit.

<form action="/action_page.php"> <label for="email">Enter your email:</label> <input type="email" id="email" name="email"><br><br> <input type="submit" value="Submit"> <input type="submit" formnovalidate="formnovalidate" value="Submit without validation"> </form>

Атрибут novalidate


Атрибут novalidate является атрибутом <form>.

При наличии атрибута novalidate указывает, что все данные формы не должны проверяться при отправке.

Укажите, что никакие данные формы не должны проверяться при отправке:

<form action="/action_page.php" novalidate> <label for="email">Enter your email:</label> <input type="email" id="email" name="email"><br><br> <input type="submit" value="Submit"> </form>