The Forms Collection

Note : Both Netscape and Internet Explorer support the Forms collection (Netscape call it an array). For properties, methods and events that are supported by <FORM> elements, see the <FORM> topic.

The Forms collection is an ordered, indexed (in document source order) array, containing a reference to every <FORM> element in a document.

Discrete form objects would normally be retrieved by their index in the Forms collection (for example document.forms(0) contains a reference to the first <FORM> element in the document), but a string value can be used, as long as that string is a valid identifier (ID or NAME attribute value) for a <FORM> in the document.

E.g.

document.forms('frmFeedback')

or

document.frmFeedback

both identify the same <FORM> in the document. The first method makes scripts easier to read and understand though.

Properties

length
The length property returns the number of forms in the collection (and therefore the document). Note that the length count starts at 1, not 0 as the forms collection index does. Therefore, the length property may return a value of 5, but to access the 4th form, you'd need to use document.forms(3).property

Methods

item
The item method retrieves single items, or sub-collections from the all collection. It accepts the following arguments:

documentforms.item(index, sub-index)

If index is a number, then the method returns a reference to the form object at that position in the forms collections index. I.e.

strTag=document.forms.item(2).action

would make strTag equal to the ACTION attribute of the documents 3rd <FORM> element. As you can see, this is effectively the long-hand version of using document.forms(3).property.

If the index property is a string value, then the item method returns a sub-collection, containing a reference to every element in the document that has its ID or NAME attribute set to the string contained in the index argument. To retrieve certain element objects from this sub-collection, the sub-index argument must be used.