HTML <button> formmethod Attribute
Example
A form with two submit buttons. The first submit button submits the form data with method="get", and the second submits the form data with method="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>
<button type="submit">Submit</button>
<button type="submit" formmethod="post">Submit using POST</button>
</form>
Try it Yourself »
Definition and Usage
The formmethod
attribute specifies which HTTP method to use when sending the
form-data. This attribute overrides the form's method
attribute.
The formmethod
attribute is only used for buttons with
type="submit"
.
The form-data can be sent as URL variables (with
method="get"
) or as HTTP
post (with
method="post"
).
Notes on the "get" method:
- it appends the form-data to the URL in name/value pairs
- it is useful for form submissions where a user want to bookmark the result
- There is a limit to how much data you can place in a URL (varies between browsers), therefore, you cannot be sure that all of the form-data will be correctly transferred
- Never use the "get" method to pass sensitive information! (password or other sensitive information will be visible in the browser's address bar)
Notes on the "post" method:
- it sends the form-data as an HTTP post transaction
- Form submissions with the "post" method cannot be bookmarked
- it is more robust and secure than "get"
- it does not have size limitations
Browser Support
The numbers in the table specify the first browser version that fully supports the attribute.
Attribute | |||||
---|---|---|---|---|---|
formmethod | 9.0 | 10.0 | 4.0 | 5.1 | 15.0 |
Syntax
<button type="submit" formmethod="get|post">
Attribute Values
Value | Description |
---|---|
get | Appends the form-data to the URL: URL?name=value&name=value |
post | Sends the form-data as an HTTP post transaction |
❮ HTML <button> tag