Атрибут method HTML тега <form>
Значение и применение
Атрибут method элемента <form> задаёт отправку методом get (по умолчанию), post или закрытие диалога значением dialog.
Метод GET в отличии от POST при отправке формы передает собранную информацию как часть URL:
url?name=value&name=value // метод GET использует пары имя = значение
При post данные находятся в теле HTTP-запроса, а не в адресной строке. Они доступны в инструментах разработчика: сам метод не шифрует данные. Для защиты передачи нужен HTTPS.
Обратите внимание на некоторые нюансы при работе с HTTP методами GET и POST:
getподходит для поиска и фильтров: адрес с параметрами можно сохранить или отправить другому человеку. Пароли и другие секреты в URL не передают.postиспользуют для отправки данных, меняющих состояние, и загрузки файлов. Размеры URL и тела запроса ограничивают браузер, сервер и посредники; общего лимита «3000 символов» и неограниченного POST нет.- Закладка сохраняет URL, но не тело POST-запроса. Повторное открытие адреса не повторяет исходную отправку формы.
Поддержка браузерами
Спецификация: multipage
Поддерживается во всех основных браузерах с 2015 года.
| Возможность | Компьютеры | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
method | 1 | 12 | 1 | 15 | 3 | 18 | 4 | 14 | 2 | 1.0 | 4.4 | 2 |
поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31
Синтаксис:
<form method = "get | post | dialog">
Значения атрибута
| Значение | Описание |
|---|---|
post |
Передаёт данные в теле HTTP-запроса. Для файлов дополнительно задайте enctype="multipart/form-data". |
get |
Добавляет данные формы в URL в виде пары имя/значение.
Метод get используется по умолчанию.
|
dialog | Внутри <dialog> закрывает диалог без сетевой отправки данных. Значение нажатой кнопки становится returnValue диалога. |
Отличия HTML 4.01 от HTML 5
В современном HTML также предусмотрено значение dialog.
Примеры, попробуйте сами
Атрибут method элемента form
Нужны отдельный HTML-документ и серверный обработчик handler.php. Встроенный просмотр не отправляет формы; листинг показывает настройку запроса.
Исходный код для изучения. Запуск на этой странице недоступен.
index.html
<form action="handler.php" method="post">
<label>Имя <input name="user" required /></label><button>Отправить</button>
</form>