HTML Атрибуты ввода form*
Эта глава описывает различные атрибуты, имеющие вид form*, для HTML элемента <input>.
Атрибут form
Атрибут form для элемента ввода указывает, к какой форме принадлежит элемент <input>.
Значение этого атрибута должно совпадать со значением атрибута id элемента <form>, к которому он относится.
Пример
Поле ввода, расположенное за пределами HTML‑формы (но всё равно являющееся её частью):
<form action="/action_page.php" id="form1">
<label for="fname">Имя:</label>
<input type="text" id="fname" name="fname"><br><br>
<input type="submit" value="Отправить">
</form>
<label for="lname">Фамилия:</label>
<input type="text" id="lname" name="lname" form="form1">
Атрибут formaction
Атрибут formaction для элемента ввода задаёт URL‑адрес файла, который будет обрабатывать данные ввода при отправке формы.
Примечание: Этот атрибут переопределяет атрибут action элемента <form>.
Атрибут formaction работает со следующими типами ввода: submit и image.
Пример
HTML форма с двумя кнопками отправки, имеющими разные действия:
<form action="/action_page.php">
<label for="fname">Имя:</label>
<input type="text" id="fname" name="fname"><br><br>
<label for="lname">Фамилия:</label>
<input type="text" id="lname" name="lname"><br><br>
<input type="submit" value="Отправить">
<input type="submit" formaction="/action_page2.php" value="Отправить как администратор">
</form>
Атрибут formenctype
Атрибут formenctype для элемента ввода задаёт способ кодирования данных формы при отправке (только для форм с method="post").
Примечание: Этот атрибут переопределяет атрибут enctype элемента <form>.
Атрибут formenctype работает со следующими типами ввода: submit и image.
Пример
Форма с двумя кнопками отправки. Первая отправляет данные формы с кодировкой по умолчанию, вторая — с кодировкой «multipart/form-data»:
<form action="/action_page_binary.asp" method="post">
<label for="fname">Имя:</label>
<input type="text" id="fname" name="fname"><br><br>
<input type="submit" value="Отправить">
<input type="submit" formenctype="multipart/form-data"
value="Отправить как Multipart/form-data">
</form>
Атрибут formmethod
Атрибут formmethod для элемента ввода определяет HTTP‑метод отправки данных формы на URL‑адрес обработчика формы.
Примечание: Этот атрибут переопределяет атрибут method элемента <form>.
Атрибут formmethod работает со следующими типами ввода: submit и image.
Данные формы могут быть отправлены в виде переменных URL (method="get") или в виде HTTP‑запроса POST (method="post").
Примечания о методе «get»:
- Этот метод добавляет данные формы к URL в виде пар имя/значение.
- Этот метод полезен для отправки форм, когда пользователь хочет сохранить результат в закладках.
- Существует ограничение на объём данных, которые можно поместить в URL (различается в зависимости от браузера), поэтому нельзя быть уверенным, что все данные формы будут корректно переданы.
- Никогда не используйте метод «get» для передачи конфиденциальной информации! (пароль или другие конфиденциальные данные будут видны в адресной строке браузера).
Примечания о методе «post»:
- Этот метод отправляет данные формы в виде HTTP‑запроса POST.
- Отправки форм с методом «post» нельзя сохранить в закладках.
- Метод «post» более надёжен и безопасен, чем «get», и не имеет ограничений по размеру.
Пример
Форма с двумя кнопками отправки. Первая отправляет данные формы с method="get", вторая — с method="post":
<form action="/action_page.php" method="get">
<label for="fname">Имя:</label>
<input type="text" id="fname" name="fname"><br><br>
<label for="lname">Фамилия:</label>
<input type="text" id="lname" name="lname"><br><br>
<input type="submit" value="Отправить с использованием GET">
<input type="submit" formmethod="post" value="Отправить с использованием POST">
</form>
Атрибут formtarget
Атрибут formtarget для элемента ввода задаёт имя или ключевое слово, указывающее, где отобразить ответ, полученный после отправки формы.
Примечание: Этот атрибут переопределяет атрибут target элемента <form>.
Атрибут formtarget работает со следующими типами ввода: submit и image.
Пример
Форма с двумя кнопками отправки и разными целевыми окнами:
<form action="/action_page.php">
<label for="fname">Имя:</label>
<input type="text" id="fname" name="fname"><br><br>
<label for="lname">Фамилия:</label>
<input type="text" id="lname" name="lname"><br><br>
<input type="submit" value="Отправить">
<input type="submit" formtarget="_blank" value="Отправить в новое окно/вкладку">
</form>
Атрибут formnovalidate
Атрибут formnovalidate для элемента ввода указывает, что элемент <input> не должен проверяться при отправке.
Примечание: Этот атрибут переопределяет атрибут novalidate элемента <form>.
Атрибут formnovalidate работает со следующим типом ввода: submit.
Пример
Форма с двумя кнопками отправки (с проверкой и без проверки):
<form action="/action_page.php">
<label for="email">Введите ваш email:</label>
<input type="email" id="email" name="email"><br><br>
<input type="submit" value="Отправить">
<input type="submit" formnovalidate="formnovalidate"
value="Отправить без проверки">
</form>
Атрибут novalidate
Атрибут novalidate — это атрибут элемента <form>.
Если он присутствует, novalidate указывает, что все данные формы не должны проверяться при отправке.
Пример
Указание, что данные формы не должны проверяться при отправке:
<form action="/action_page.php" novalidate>
<label for="email">Введите ваш email:</label>
<input type="email" id="email" name="email"><br><br>
<input type="submit" value="Отправить">
</form>