The forms read-only property of the Document interface returns an HTMLCollection listing all the <form> elements contained in the document.
Note: Similarly, you can access a list of a form's component user input elements using the HTMLFormElement.elements property.
Syntax
collection = document.forms;
Value
An HTMLCollection object listing all of the document's forms. Each item in the collection is a HTMLFormElement representing a single <form> element.
If the document has no forms, the returned collection is empty, with a length of zero.
Examples
Getting form information
<!DOCTYPE html> <html lang="en"> <head> <title>document.forms example</title> </head> <body> <form id="robby"> <input type="button" onclick="alert(document.forms[0].id);" value="robby's form" /> </form> <form id="dave"> <input type="button" onclick="alert(document.forms[1].id);" value="dave's form" /> </form> <form id="paul"> <input type="button" onclick="alert(document.forms[2].id);" value="paul's form" /> </form> </body> </html>
Getting an element from within a form
var selectForm = document.forms[index]; var selectFormElement = document.forms[index].elements[index];
Named form access
<!DOCTYPE html> <html lang="en"> <head> <title>document.forms example</title> </head> <body> <form name="login"> <input name="email" type="email"> <input name="password" type="password"> <button type="submit">Log in</button> </form> <script> var loginForm = document.forms.login; // Or document.forms['login'] loginForm.elements.email.placeholder = 'test@example.com'; loginForm.elements.password.placeholder = 'password'; </script> </body> </html>
Specifications
| Specification | Status | Comment |
|---|---|---|
| HTML Living Standard The definition of 'Document.forms' in that specification. |
Living Standard | |
| Document Object Model (DOM) Level 2 HTML Specification The definition of 'Document.forms' in that specification. |
Obsolete | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
forms | Chrome Full support 1 | Edge Full support 12 | Firefox Full support Yes | IE ? | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support Yes | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
See also
- HTML forms
<form>and theHTMLFormElementinterface
