bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/HTML/Forms and Input
HTML•Forms and Input

HTML Forms

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind HTML Forms?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ elements
3Order

Put the learning moves in the order that makes the concept easiest to apply.

The <label> Element
The <input> Element
The <form> Element

An HTML form is used to collect user input. The user input is most often sent to a server for processing.

The <form> Element

The HTML <form> element is used to create an HTML form for user input:

<form>
 .
form elements
 .
 </form>

The <form> element is a container for different types of input elements, such as: text fields, checkboxes, radio buttons, submit buttons, etc.

All the different form elements are covered in this chapter: HTML Form Elements .

The <input> Element

The HTML <input> element is the most used form element.

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

Here are some examples

TypeDescription
<input type="text">Displays a single-line text input field
<input type="radio">Displays a radio button (for selecting one of many choices)
<input type="checkbox">Displays a checkbox (for selecting zero or more of many choices)
<input type="submit">Displays a submit button (for submitting the form)
<input type="button">Displays a clickable button

All the different input types are covered in this chapter: HTML Input Types .

Text Fields

The <input type="text"> defines a single-line input field for text input.

Example

Formatted code
 <form>

    <label for="fname">First name:</label><br>
  <input
  type="text" id="fname" name="fname"><br>
  <label for="lname">Last
  name:</label><br>
  <input type="text" id="lname" name="lname">
</form>

Live preview

This is how the HTML code above will be displayed in a browser:

Note

The form itself is not visible. Also note that the default width of an input field is 20 characters.

The <label> Element

Notice the use of the <label> element in the example above.

The <label> tag defines a label for many form elements.

The <label> element is useful for screen-reader users, because the screen-reader will read out loud the label when the user focuses on the input element.

The <label> element also helps users who have difficulty clicking on very small regions (such as radio buttons or checkboxes) - because when the user clicks the text within the <label> element, it toggles the radio button/checkbox.

The for attribute of the <label> tag should be equal to the id attribute of the <input> element to bind them together.

Radio Buttons

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

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

Example

Formatted code
<p>Choose your favorite Web language:</p>

<form>
  <input type="radio" id="html" name="fav_language"
  value="HTML">
  <label for="html">HTML</label><br>
  <input
  type="radio" id="css" name="fav_language" value="CSS">
  <label
  for="css">CSS</label><br>
  <input type="radio" id="javascript"
  name="fav_language" value="JavaScript">
  <label for="javascript">JavaScript</label>
</form>

Live preview

This is how the HTML code above will be displayed in a browser:

Checkboxes

The <input type="checkbox"> defines a checkbox .

Checkboxes let a user select ZERO or MORE options of a limited number of choices.

Example

Formatted code
<form>
 <input type="checkbox" id="vehicle1" name="vehicle1" value="Bike">

 <label for="vehicle1"> I have a bike</label><br>
 <input
 type="checkbox" id="vehicle2" name="vehicle2" value="Car">
 <label for="vehicle2">
 I have a car</label><br>
 <input type="checkbox"
 id="vehicle3" name="vehicle3"
 value="Boat">
 <label for="vehicle3"> I have a boat</label>

</form>

Live preview

This is how the HTML code above will be displayed in a browser:

The Submit Button

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

The form-handler is typically a file on the server with a script for processing input data.

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

Example

Formatted code
 <form action="/action_page.php">
  <label for="fname">First
  name:</label><br>
  <input type="text" id="fname" name="fname"
  value="John"><br>
  <label for="lname">Last name:</label><br>

  <input type="text" id="lname" name="lname" value="Doe"><br><br>

  <input type="submit" value="Submit">
</form>

Live preview

This is how the HTML code above will be displayed in a browser:

The Name Attribute for <input>

Notice that each input field must have a name attribute to be submitted.

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

Example

Formatted code
 <form action="/action_page.php">
  <label for="fname">First
  name:</label><br>
  <input type="text" id="fname" value="John"><br><br>

  <input type="submit" value="Submit">
</form>

Live preview

Next

HTML Form Attributes