HTML forms


HTML Form Example

First name:

Last name:



The <form> Element

The HTML <form> element defines a form that is used to collect user input:


                      <form>
                          .
                          form elements
                          .
                          </form>
                  

An HTML form contains form elements.

Form elements are different types of input elements, like text fields, checkboxes, radio buttons, submit buttons, and more.


The <input> Element

The <input> element is the most important form element.

The <input> element can be displayed in several ways, depending on the type attribute.

Here are some examples:

Type Description
<input type="text"> Defines a one-line text input field
<input type="radio"> Defines a radio button (for selecting one of many choices)
<input type="submit"> Defines a submit button (for submitting the form)

Note: You will learn a lot more about input types later in this tutorial.


Text Input

<input type="text"> defines a one-line input field for text input:


                      <form>
                          First name:<br>
                          <input type="text" name="firstname"><br>
                          Last name:<br>
                          <input type="text" name="lastname">
                        </form>
                  

Live preview

First name:

Last name:

Note: The form itself is not visible. Also note that the default width of a text field is 20 characters.


Radio Button Input

<input type="radio"> defines a radio button.

Radio buttons let a user select ONE of a limited number of choices:


                    <form>
                        <input type="radio" name="gender" value="male" checked> Male<br>
                        <input type="radio" name="gender" value="female"> Female<br>
                        <input type="radio" name="gender" value="other"> Other
                      </form>
                

Live preview

Male
Female
Other

The Submit Button

<input type="submit"> defines a button for submitting the form data to a form-handler.

The form-handler is typically a server page with a script for processing input data.

The form-handler is specified in the form's action attribute:


                              <form>
                                First name:<br>
                                <input type="text" name="firstname" value="Mickey"><br>
                                Last name:<br>
                                <input type="text" name="lastname" value="Mouse"><br><br>
                                <input type="submit" value="Submit">
                              </form>
                          

Live preview

First name:

Last name:



The Name Attribute

Each input field must have a name attribute to be submitted.

If the name attribute is omitted, the data of that input field will not be sent at all.

This example will only submit the "Last name" input field:


                    <form>
                      First name:<br>
                      <input type="text" value="Mickey"><br>
                      Last name:<br>
                      <input type="text" name="lastname" value="Mouse"><br><br>
                      <input type="submit" value="Submit">
                    </form>
                

Rate this lesson

Previous lesson Next lesson

Spread the word:
Do you need help? Use our support forum

About the author

User avatar
Michal Szymanski
Co-Founder at MDBootstrap & BrandFlow. Entrepreneur, web developer, UI/UX designer, marketing analyst. Dancer and nerd in one.