MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

Learn web development

Forms and buttons

Draft
This page is not complete.

Forms and buttons are a very important part of the Web — these allow your site visitors to input data and send it to you (e.g. registration, login and feedback forms), and you to implement controls for controlling complex functionality (for example submitting a form to the server, or pausing playback of a video.) This module gets you started.

Prerequisites

Before starting this module, you should have a reasonable knowledge of the basics of HTML, as covered in Introduction to HTML. If you've not worked through this module (or something similar), work through it first, then come back!

Note: If you are working on a computer/tablet/other device where you don't have the ability to create your own files, you could try out (most of) the code examples in an online coding program such as JSBin or Thimble.

Guides

This module contains the following articles, which will take you through all the fundamentals of embedding multimedia on webpages.

Form and button basics
In this article we'll take you through the basics of HTML forms, including their purpose, basic features, and common form controls. We'll also have a look at HTML buttons and how they can be used.
Form semantics and structure
A number of elements exist that allow us to structure forms to be more usable and accessible — some of them specialized form elements, and some of them general HTML containers. In this article we will look at best practices for creating form structures.
Advanced form features
Here we will cover some of the more advanced features available in HTML forms such as datalists,  progress bars, sliders, and minimum and maximum values.
Form validation
In our final forms article we will touch on form validation, talking about why it is necessary and looking at some of the features provided by HTML tabs for client-side validation of form data.

Assessments

Forms assessment
TBD.

Document Tags and Contributors

 Contributors to this page: chrisdavidmills
 Last updated by: chrisdavidmills,