This is revision 1.5612.
form
elementform
element descendants.accept-charset
action
autocomplete
enctype
method
name
novalidate
target
[OverrideBuiltins] interface HTMLFormElement : HTMLElement { attribute DOMString acceptCharset; attribute DOMString action; attribute DOMString autocomplete; attribute DOMString enctype; attribute DOMString encoding; attribute DOMString method; attribute DOMString name; attribute boolean noValidate; attribute DOMString target; readonly attribute HTMLFormControlsCollection elements; readonly attribute long length; getter Element (unsigned long index); getter object (DOMString name); void submit(); void reset(); boolean checkValidity(); };
The form
element represents a
collection of form-associated
elements, some of which can represent editable values that
can be submitted to a server for processing.
The accept-charset
attribute gives the character encodings that are to be used for the
submission. If specified, the value must be an ordered set of
unique space-separated tokens that are ASCII
case-insensitive, and each token must be an ASCII
case-insensitive match for the preferred MIME
name of an ASCII-compatible character encoding.
[IANACHARSET]
The name
attribute
represents the form
's name within the forms
collection. The value must
not be the empty string, and the value must be unique amongst the
form
elements in the forms
collection that it is in, if
any.
The autocomplete
attribute is an enumerated attribute. The attribute has
two states. The on
keyword maps to the on state, and the
off
keyword maps to
the off
state. The attribute may also be omitted. The missing value
default is the on state. The off state indicates
that by default, input
elements in the form will have
their resulting autocompletion state set to off; the on state indicates
that by default, input
elements in the form will have
their resulting autocompletion state set to on.
The action
, enctype
, method
, novalidate
, and target
attributes are attributes
for form submission.
elements
Returns an HTMLCollection
of the form controls in
the form (excluding image buttons for historical reasons).
length
Returns the number of form controls in the form (excluding image buttons for historical reasons).
Returns the indexth element in the form (excluding image buttons for historical reasons).
Returns the form control (or, if there are several, a
NodeList
of the form controls) in the form with the
given ID or name
(excluding image buttons for
historical reasons); or, if there are none, returns the
img
element with the given ID.
Once an element has been referenced using a particular name,
that name will continue being available as a way to reference that
element in this method, even if the element's actual ID or name
changes, for as long as the
element remains in the Document
.
If there are multiple matching items, then a
NodeList
object containing all those elements is
returned.
submit
()Submits the form.
reset
()Resets the form.
checkValidity
()Returns true if the form's controls are all valid; otherwise, returns false.
The autocomplete
IDL
attribute must reflect the content attribute of the
same name, limited to only known values.
The name
IDL
attribute must reflect the content attribute of the
same name.
The acceptCharset
IDL
attribute must reflect the accept-charset
content
attribute.
The elements
IDL attribute must return an HTMLFormControlsCollection
rooted at the Document
node, whose filter matches listed elements whose form
owner is the form
element, with the exception of
input
elements whose type
attribute is in the Image Button state, which must,
for historical reasons, be excluded from this particular
collection.
The length
IDL
attribute must return the number of nodes represented by the elements
collection.
The supported property indices at any instant are
the indices supported by the object returned by the elements
attribute at that
instant.
When a form
element is indexed for indexed property retrieval,
the user agent must return the value returned by the item
method on
the elements
collection, when
invoked with the given index as its argument.
Each form
element has a mapping of names to elements
called the past names map. It is used to persist names of
controls even when they change names.
The supported property names consist of the values
of all the id
and name
attributes of all the listed elements and img
elements that are descendants of the form
element, and
all the names currently in the past names map.
When a form
element is indexed for named property
retrieval, the user agent must run the following steps:
Let candidates be a live
NodeList
object containing all the listed elements that are descendants
of the form
element and that have either an id
attribute or a name
attribute equal to name, in tree order.
If candidates is empty, let candidates be a live
NodeList
object containing all the img
elements that are descendants of the form
element and
that have either an id
attribute or a
name
attribute equal to name, in tree order.
If candidates is empty, name is the name of one of the entries in the
form
element's past names map: return the
object associated with name in that
map.
If candidates contains more than one node, return candidates and abort these steps.
Otherwise, candidates contains exactly
one node. Add a mapping from name to the node
in candidates in the form
element's
past names map, replacing the previous entry with the
same name, if any.
Return the node in candidates.
If an element listed in the form
element's past
names map is removed from the Document
, then its
entries must be removed from the map.
The submit()
method, when invoked, must submit the form
element from the form
element itself, with the submitted from submit()
method flag set.
The reset()
method, when invoked, must run the following steps:
If the form
element is marked as locked for
reset, then abort these steps.
Mark the form
element as locked for
reset.
Unmark the form
element as locked for
reset.
If the checkValidity()
method is invoked, the user agent must statically validate the
constraints of the form
element, and return true
if the constraint validation return a positive result, and
false if it returned a negative result.
This example shows two search forms:
<form action="http://www.google.com/search" method="get"> <label>Google: <input type="search" name="q"></label> <input type="submit" value="Search..."> </form> <form action="http://www.bing.com/search" method="get"> <label>Bing: <input type="search" name="q"></label> <input type="submit" value="Search..."> </form>