HTMLSelectElement (Java SE 21 & JDK 21)
Description: declaration: module: jdk.xml.dom, package: org.w3c.dom.html, interface: HTMLSelectElement
Keywords: org.w3c.dom.html.HTMLSelectElement interface

Module jdk.xml.dom
Package org.w3c.dom.html

# Interface HTMLSelectElement

All Superinterfaces:
  `Element`, `HTMLElement`, `Node`

public interface HTMLSelectElement extends HTMLElement
The select element allows the selection of an option. The contained options can be directly accessed through the select element as a collection. See the SELECT element definition in HTML 4.0.

See also the Document Object Model (DOM) Level 2 Specification.

Since:
  1.4, DOM Level 2

- ## Field Summary

  ### Fields declared in interface org.w3c.dom.Node

  `ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `add(HTMLElement element, HTMLElement before)`
  Add a new element to the collection of `OPTION` elements for this `SELECT` .
  `void`
  `blur()`
  Removes keyboard focus from this element.
  `void`
  `focus()`
  Gives keyboard focus to this element.
  `boolean`
  `getDisabled()`
  The control is unavailable in this context.
  `HTMLFormElement`
  `getForm()`
  Returns the `FORM` element containing this control.
  `int`
  `getLength()`
  The number of options in this `SELECT` .
  `boolean`
  `getMultiple()`
  If true, multiple `OPTION` elements may be selected in this `SELECT` .
  `String`
  `getName()`
  Form control or object name when submitted with a form.
  `HTMLCollection`
  `getOptions()`
  The collection of `OPTION` elements contained by this element.
  `int`
  `getSelectedIndex()`
  The ordinal index of the selected option, starting from 0.
  `int`
  `getSize()`
  Number of visible rows.
  `int`
  `getTabIndex()`
  Index that represents the element's position in the tabbing order.
  `String`
  `getType()`
  The type of this form control.
  `String`
  `getValue()`
  The current form control value.
  `void`
  `remove(int index)`
  Remove an element from the collection of `OPTION` elements for this `SELECT` .
  `void`
  `setDisabled(boolean disabled)`
  `void`
  `setMultiple(boolean multiple)`
  `void`
  `setName(String name)`
  `void`
  `setSelectedIndex(int selectedIndex)`
  `void`
  `setSize(int size)`
  `void`
  `setTabIndex(int tabIndex)`
  `void`
  `setValue(String value)`

  ### Methods declared in interface org.w3c.dom.Element

  `getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS`

  ### Methods declared in interface org.w3c.dom.html.HTMLElement

  `getClassName, getDir, getId, getLang, getTitle, setClassName, setDir, setId, setLang, setTitle`

  ### Methods declared in interface org.w3c.dom.Node

  `appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData`

- ## Method Details

  - ### getType

    String getType()
    The type of this form control. This is the string "select-multiple" when the multiple attribute is `true` and the string "select-one" when `false` .

  - ### getSelectedIndex

    int getSelectedIndex()
    The ordinal index of the selected option, starting from 0. The value -1 is returned if no element is selected. If multiple options are selected, the index of the first selected option is returned.

  - ### setSelectedIndex

    void setSelectedIndex(int selectedIndex)

  - ### getValue

    String getValue()
    The current form control value.

  - ### setValue

    void setValue(String value)

  - ### getLength

    int getLength()
    The number of options in this `SELECT` .

  - ### getForm

    HTMLFormElement getForm()
    Returns the `FORM` element containing this control. Returns `null` if this control is not within the context of a form.

  - ### getOptions

    HTMLCollection getOptions()
    The collection of `OPTION` elements contained by this element.

  - ### getDisabled

    boolean getDisabled()
    The control is unavailable in this context. See the disabled attribute definition in HTML 4.0.

  - ### setDisabled

    void setDisabled(boolean disabled)

  - ### getMultiple

    boolean getMultiple()
    If true, multiple `OPTION` elements may be selected in this `SELECT` . See the multiple attribute definition in HTML 4.0.

  - ### setMultiple

    void setMultiple(boolean multiple)

  - ### getName

    String getName()
    Form control or object name when submitted with a form. See the name attribute definition in HTML 4.0.

  - ### setName

    void setName(String name)

  - ### getSize

    int getSize()
    Number of visible rows. See the size attribute definition in HTML 4.0.

  - ### setSize

    void setSize(int size)

  - ### getTabIndex

    int getTabIndex()
    Index that represents the element's position in the tabbing order. See the tabindex attribute definition in HTML 4.0.

  - ### setTabIndex

    void setTabIndex(int tabIndex)

  - ### add

    void add(HTMLElement element, HTMLElement before) throws DOMException
    Add a new element to the collection of `OPTION` elements for this `SELECT` . This method is the equivalent of the `appendChild` method of the `Node` interface if the `before` parameter is `null` . It is equivalent to the `insertBefore` method on the parent of `before` in all other cases.
    Parameters:
      `element` - The element to add.
      `before` - The element to insert before, or `null` for the tail of the list.
    Throws:
      `DOMException` - NOT_FOUND_ERR: Raised if `before` is not a descendant of the `SELECT` element.

  - ### remove

    void remove(int index)
    Remove an element from the collection of `OPTION` elements for this `SELECT` . Does nothing if no element has the given index.
    Parameters:
      `index` - The index of the item to remove, starting from 0.

  - ### blur

    void blur()
    Removes keyboard focus from this element.

  - ### focus

    void focus()
    Gives keyboard focus to this element.