Атрибут formmethod HTML тега button

Атрибут formmethod определяет метод отправки данных формы на сервер. Этот атрибут переопределяет атрибут method тега <form>.

Атрибут formmethod может использоваться только с тегом <button> имеющим type="submit".

Данные формы могут отправляться на сервер либо как переменные URL (при method="get"), либо в теле сообщения HTTP (при method="post").

Особенности передачи данных методом GET:

  • данные присоединяются к URL в виде пар имя/значение
  • существует ограничение на размер передаваемых данных (зависит от браузера)
  • никогда не стоит использовать метод GET для передачи важной информации! (например, пароли будут видны в адресной строке браузера)

Особенности передачи данных методом POST:

  • данные отправляются в теле HTTP запроса
  • он надежнее и безопаснее метода GET
  • у него нет ограничений по размеру передаваемых данных

Атрибут formmethod для тега <button> был добавлен в HTML5.

Синтаксис атрибута

<button type="submit" formmethod="get | post">

Значения атрибута

ЗначениеОписание
getПрисоединяет данные к URL: URL?имя=значение&имя=значение
postОтсылает данные формы через тело сообщения по HTTP протоколу

Пример использования атрибута

HTML форма с двумя кнопками. Первая кнопка отправляет данные формы методом GET, а вторая методом POST:


<form action="//msiter.ru/demo_form.asp" method="get">
   Имя: <input type="text" name="fname"><br>
   Фамилия: <input type="text" name="lname"><br>
   <button type="submit">Отправить</button>
   <button type="submit" formmethod="post" formaction="demo_post.asp">Отправить методом POST</button>
</form>