Атрибут 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 года.

Показать браузеры
Совместимостьhtml.elements.form.method
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
method✓1✓12✓1✓15✓3✓18✓4✓14✓2✓1.0✓4.4✓2

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

Синтаксис:

HTML
<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
HTML
<form action="handler.php" method="post">
  <label>Имя <input name="user" required /></label><button>Отправить</button>
</form>