HTMLInputElement
The HTMLInputElement interface provides special properties and methods for manipulating the options, layout, and presentation of <input> elements.
Instance properties
Some properties only apply to input element types that support the corresponding attributes.
alignDeprecated-
string: Represents the alignment of the element. Use CSS instead. autocapitalizeExperimental-
string: Defines the capitalization behavior for user input. Valid values arenone,off,characters,wordsorsentences. defaultValue-
string: Returns / Sets the default value as originally specified in the HTML that created this object. dirName-
string: Returns / Sets the directionality of the element. inputmode-
Provides a hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents.
labelsRead only-
NodeListarray: Returns a list of<label>elements that are labels for this element. listRead only-
HTMLElement: Returns the element pointed to by thelistattribute. The property may benullif no HTML element is found in the same tree. multiple-
boolean: Returns / Sets the element'smultipleattribute, indicating whether more than one value is possible (e.g., multiple files). name-
string: Returns / Sets the element'snameattribute, containing a name that identifies the element when submitting the form. popoverTargetAction-
Gets and sets the action to be performed (
"hide","show", or"toggle") on a popover element being controlled by an<input>element oftype="button". It reflects the value of thepopovertargetactionHTML attribute. popoverTargetElement-
Gets and sets the popover element to control via an
<input>element oftype="button". The JavaScript equivalent of thepopovertargetHTML attribute. step-
string: Returns / Sets the element'sstepattribute, which works withminandmaxto limit the increments at which a numeric or date-time value can be set. It can be the stringanyor a positive floating point number. If this is not set toany, the control accepts only values at multiples of the step value greater than the minimum. type-
string: Returns / Sets the element'stypeattribute, indicating the type of control to display. For possible values, see the documentation for thetypeattribute. useMapDeprecated-
string: Represents a client-side image map. value-
string: Returns / Sets the current value of the control. If the user enters a value different from the value expected, this may return an empty string. valueAsDate-
Date: Returns / Sets the value of the element, interpreted as a date, ornullif conversion is not possible. valueAsNumber-
double: Returns the value of the element, interpreted as one of the following, in order: A time value, a number orNaNif conversion is impossible
Instance properties related to the parent form
formRead only-
HTMLFormElement: Returns a reference to the parent<form>element. formAction-
string: Returns / Sets the element'sformactionattribute, containing the URL of a program that processes information submitted by the element. This overrides theactionattribute of the parent form. formEnctype-
string: Returns / Sets the element'sformenctypeattribute, containing the type of content that is used to submit the form to the server. This overrides theenctypeattribute of the parent form. formMethod-
string: Returns / Sets the element'sformmethodattribute, containing the HTTP method that the browser uses to submit the form. This overrides themethodattribute of the parent form. formNoValidate-
boolean: Returns / Sets the element'sformnovalidateattribute, indicating that the form is not to be validated when it is submitted. This overrides thenovalidateattribute of the parent form. formTarget-
string: Returns / Sets the element'sformtargetattribute, containing a name or keyword indicating where to display the response that is received after submitting the form. This overrides thetargetattribute of the parent form.
Instance properties that apply to any type of input element that is not hidden
autofocus-
boolean: Returns / Sets the element'sautofocusattribute, which specifies that a form control should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form element in a document can have theautofocusattribute. disabled-
boolean: Returns / Sets the element'sdisabledattribute, indicating that the control is not available for interaction. The input values will not be submitted with the form. See alsoreadonly. required-
boolean: Returns / Sets the element'srequiredattribute, indicating that the user must fill in a value before submitting a form. validationMessageRead only-
string: Returns a localized message that describes the validation constraints that the control does not satisfy (if any). This is the empty string if the control is not a candidate for constraint validation (willValidateisfalse), or it satisfies its constraints. This value can be set by thesetCustomValidity()method. validityRead only-
ValidityState: Returns the element's current validity state. willValidateRead only-
boolean: Returns whether the element is a candidate for constraint validation. It isfalseif any conditions bar it from constraint validation, including: itstypeis one ofhidden,resetorbutton, it has a<datalist>ancestor or itsdisabledproperty istrue.
Instance properties that apply only to elements of type checkbox or radio
checked-
boolean: Returns / Sets the current state of the element. defaultChecked-
boolean: Returns / Sets the default state of a radio button or checkbox as originally specified in HTML that created this object. indeterminate-
boolean: Returns whether the checkbox or radio button is in indeterminate state. For checkboxes, the effect is that the appearance of the checkbox is obscured/greyed in some way as to indicate its state is indeterminate (not checked but not unchecked). Does not affect the value of thecheckedattribute, and clicking the checkbox will set the value to false.
Instance properties that apply only to elements of type image
alt-
string: Returns / Sets the element'saltattribute, containing alternative text to use. height-
string: Returns / Sets the element'sheightattribute, which defines the height of the image displayed for the button. src-
string: Returns / Sets the element'ssrcattribute, which specifies a URI for the location of an image to display on the graphical submit button. width-
string: Returns / Sets the element'swidthattribute, which defines the width of the image displayed for the button.
Instance properties that apply only to elements of type file
accept-
string: Returns / Sets the element'sacceptattribute, containing comma-separated list of file types that can be selected. allowdirsNon-standard-
boolean: Part of the non-standard Directory Upload API. Indicates whether or not to allow directories and files both to be selected in the file list. Implemented only in Firefox and is hidden behind a preference. files-
FileList: Returns / Sets a list ofFileobjects representing the files selected for upload. webkitdirectory-
boolean: Returns thewebkitdirectoryattribute. Iftrue, the file-system-picker interface only accepts directories instead of files. webkitEntries-
FileSystemEntryarray: Describes the currently selected files or directories.
Instance properties that apply only to visible elements containing text or numbers
autocomplete-
string: Returns / Sets the element'sautocompleteattribute, indicating whether the value of the control can be automatically completed by the browser. max-
string: Returns / Sets the element'smaxattribute, containing the maximum (numeric or date-time) value for this item, which must not be less than its minimum (minattribute) value. maxLength-
unsigned long: Returns / Sets the element'smaxlengthattribute, containing the maximum number of characters (in Unicode code points) that the value can have. min-
string: Returns / Sets the element'sminattribute, containing the minimum (numeric or date-time) value for this item, which must not be greater than its maximum (maxattribute) value. minLength-
unsigned long: Returns / Sets the element'sminlengthattribute, containing the minimum number of characters (in Unicode code points) that the value can have. pattern-
string: Returns / Sets the element'spatternattribute, containing a regular expression that the control's value is checked against. Use thetitleattribute to describe the pattern to help the user. This attribute only applies when the value of thetypeattribute istext,search,tel,urloremail. placeholder-
string: Returns / Sets the element'splaceholderattribute, containing a hint to the user of what can be entered in the control. The placeholder text must not contain carriage returns or line-feeds. This attribute only applies when the value of thetypeattribute istext,search,tel,urloremail. readOnly-
boolean: Returns / Sets the element'sreadonlyattribute, indicating that the user cannot modify the value of the control. This is ignored if thetypeishidden,range,color,checkbox,radio,file, or a button type. selectionEnd-
unsigned long: Returns / Sets the end index of the selected text. When there's no selection, this returns the offset of the character immediately following the current text input cursor position. selectionStart-
unsigned long: Returns / Sets the beginning index of the selected text. When nothing is selected, this returns the position of the text input cursor (caret) inside of the<input>element. selectionDirection-
string: Returns / Sets the direction in which selection occurred. Possible values are:forward(the selection was performed in the start-to-end direction of the current locale),backward(the opposite direction) ornone(the direction is unknown). size-
unsigned long: Returns / Sets the element'ssizeattribute, containing visual size of the control. This value is in pixels unless the value oftypeistextorpassword, in which case, it is an integer number of characters. Applies only whentypeis set totext,search,tel,url,email, orpassword.
Instance methods
blur()-
Removes focus from the input element; keystrokes will subsequently go nowhere.
click()-
Simulates a click on the input element.
focus()-
Focuses on the input element; keystrokes will subsequently go to this element.
select()-
Selects all the text in the input element, and focuses it so the user can subsequently replace all of its content.
setSelectionRange()-
Selects a range of text in the input element (but does not focus it).
setRangeText()-
Replaces a range of text in the input element with new text.
setCustomValidity()-
Sets a custom validity message for the element. If this message is not the empty string, then the element is suffering from a custom validity error, and does not validate.
showPicker()-
Shows a browser picker for date, time, color, and files.
checkValidity()-
Returns a boolean value that is
falseif the element is a candidate for constraint validation, and it does not satisfy its constraints. In this case, it also fires aninvalidevent at the element. It returnstrueif the element is not a candidate for constraint validation, or if it satisfies its constraints. reportValidity()-
Runs the
checkValidity()method, and if it returns false (for an invalid input or no pattern attribute provided), then it reports to the user that the input is invalid in the same manner as if you submitted a form. stepDown()-
Decrements the
valueby (step* n), where n defaults to 1 if not specified. Throws anInvalidStateErrorexception: stepUp()-
Increments the
valueby (step* n), where n defaults to 1 if not specified. Throws anInvalidStateErrorexception:
Events
Listen to these events using addEventListener() or by assigning an event listener to the oneventname property of this interface:
input-
Fires when the
valueof an<input>,<select>, or<textarea>element has been changed. Note that this is actually fired on theHTMLElementinterface and also applies tocontenteditableelements, but we've listed it here because it is most commonly used with form input elements. invalid-
Fired when an element does not satisfy its constraints during constraint validation.
searchNon-standard-
Fired when a search is initiated on an
<input>oftype="search". selectionchangeevent Experimental-
Fires when the text selection in a
<input>element has been changed.
Specifications
| Specification |
|---|
| HTML Standard # htmlinputelement |
Browser compatibility
BCD tables only load in the browser
See also
- HTML element implementing this interface:
<input>