com.google.gwt.dom.client

## Class SelectElement

- java.lang.Object
- - com.google.gwt.core.client.JavaScriptObject
  - - com.google.gwt.dom.client.Node
    - - com.google.gwt.dom.client.Element
      - - com.google.gwt.dom.client.SelectElement

-     @TagName(value="select")
      public class SelectElement
      extends Element

  The select element allows the selection of an option. The contained options can be directly accessed through the select element as a collection.
  See Also:
    W3C HTML Specification

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `TAG`

    - ### Fields inherited from class com.google.gwt.dom.client.Element

      `DRAGGABLE_AUTO, DRAGGABLE_FALSE, DRAGGABLE_TRUE`

    - ### Fields inherited from class com.google.gwt.dom.client.Node

      `DOCUMENT_NODE, ELEMENT_NODE, TEXT_NODE`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `SelectElement()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(OptionElement option, OptionElement before)` Add a new element to the collection of OPTION elements for this SELECT.
    `static SelectElement` | `as(Element elem)` Assert that the given `Element` is compatible with this class and automatically typecast it.
    `void` | `clear()` Removes all OPTION elements from this SELECT.
    `java.lang.String` | `getDisabled()` Deprecated. use `isDisabled()` instead.
    `FormElement` | `getForm()` Returns the FORM element containing this control.
    `int` | `getLength()` The number of options in this SELECT.
    `java.lang.String` | `getMultiple()` If true, multiple OPTION elements may be selected in this SELECT.
    `java.lang.String` | `getName()` Form control or object name when submitted with a form.
    `NodeList<OptionElement>` | `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.
    `java.lang.String` | `getType()` The type of this form control.
    `java.lang.String` | `getValue()` The current form control value (i.e., the value of the currently selected option), if multiple options are selected this is the value of the first selected option.
    `boolean` | `isDisabled()` The control is unavailable in this context.
    `boolean` | `isMultiple()` If true, multiple OPTION elements may be selected in this SELECT.
    `void` | `remove(int index)` Remove an element from the collection of OPTION elements for this SELECT.
    `void` | `setDisabled(boolean disabled)` The control is unavailable in this context.
    `void` | `setDisabled(java.lang.String disabled)` The control is unavailable in this context.
    `void` | `setMultiple(boolean multiple)` If true, multiple OPTION elements may be selected in this SELECT.
    `void` | `setName(java.lang.String name)` Form control or object name when submitted with a form.
    `void` | `setSelectedIndex(int index)` The ordinal index of the selected option, starting from 0.
    `void` | `setSize(int size)` Number of visible rows.
    `void` | `setType(java.lang.String type)` The type of this form control.
    `void` | `setValue(java.lang.String value)` The current form control value (i.e., the value of the currently selected option), if multiple options are selected this is the value of the first selected option.

    - ### Methods inherited from class com.google.gwt.dom.client.Element

      `addClassName, as, as, blur, dispatchEvent, focus, getAbsoluteBottom, getAbsoluteLeft, getAbsoluteRight, getAbsoluteTop, getAttribute, getClassName, getClientHeight, getClientWidth, getDir, getDraggable, getElementsByTagName, getFirstChildElement, getId, getInnerHTML, getInnerText, getLang, getNextSiblingElement, getOffsetHeight, getOffsetLeft, getOffsetParent, getOffsetTop, getOffsetWidth, getPreviousSiblingElement, getPropertyBoolean, getPropertyDouble, getPropertyInt, getPropertyJSO, getPropertyObject, getPropertyString, getScrollHeight, getScrollLeft, getScrollTop, getScrollWidth, getString, getStyle, getTabIndex, getTagName, getTitle, hasAttribute, hasTagName, indexOfName, is, is, removeAttribute, removeClassName, replaceClassName, scrollIntoView, setAttribute, setClassName, setDir, setDraggable, setId, setInnerHTML, setInnerSafeHtml, setInnerText, setLang, setPropertyBoolean, setPropertyDouble, setPropertyInt, setPropertyJSO, setPropertyObject, setPropertyString, setScrollLeft, setScrollTop, setTabIndex, setTitle`

    - ### Methods inherited from class com.google.gwt.dom.client.Node

      `appendChild, cloneNode, getChild, getChildCount, getChildNodes, getFirstChild, getLastChild, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentElement, getParentNode, getPreviousSibling, hasChildNodes, hasParentElement, insertAfter, insertBefore, insertFirst, isOrHasChild, removeChild, removeFromParent, replaceChild, setNodeValue`

    - ### Methods inherited from class com.google.gwt.core.client.JavaScriptObject

      `cast, createArray, createFunction, createObject, equals, hashCode, toSource, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### TAG

          public static final java.lang.String TAG

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### SelectElement

          protected SelectElement()

  - ### Method Detail

    - #### as

          public static SelectElement as(Element elem)

      Assert that the given `Element` is compatible with this class and automatically typecast it.

    - #### add

          public final void add(OptionElement option,
                 OptionElement before)

      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. This method may have no effect if the new element is not an OPTION or an OPTGROUP.
      Parameters:
        `option` - The element to add
        `before` - The element to insert before, or null for the tail of the list

    - #### clear

          public final void clear()

      Removes all OPTION elements from this SELECT.

    - #### getDisabled

          @Deprecated
          public final java.lang.String getDisabled()

      Deprecated. use `isDisabled()` instead.
      The control is unavailable in this context.
      See Also:
        W3C HTML Specification

    - #### getForm

          public final FormElement getForm()

      Returns the FORM element containing this control. Returns null if this control is not within the context of a form.

    - #### getLength

          public final int getLength()

      The number of options in this SELECT.

    - #### getMultiple

          public final java.lang.String getMultiple()

      If true, multiple OPTION elements may be selected in this SELECT.
      See Also:
        W3C HTML Specification

    - #### getName

          public final java.lang.String getName()

      Form control or object name when submitted with a form.
      See Also:
        W3C HTML Specification

    - #### getOptions

          public final NodeList<OptionElement> getOptions()

      The collection of OPTION elements contained by this element.

    - #### getSelectedIndex

          public final 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.

    - #### getSize

          public final int getSize()

      Number of visible rows.
      See Also:
        W3C HTML Specification

    - #### getType

          public final java.lang.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.

    - #### getValue

          public final java.lang.String getValue()

      The current form control value (i.e., the value of the currently selected option), if multiple options are selected this is the value of the first selected option.

    - #### isDisabled

          public final boolean isDisabled()

      The control is unavailable in this context.
      See Also:
        W3C HTML Specification

    - #### isMultiple

          public final boolean isMultiple()

      If true, multiple OPTION elements may be selected in this SELECT.
      See Also:
        W3C HTML Specification

    - #### remove

          public final 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.

    - #### setDisabled

          public final void setDisabled(boolean disabled)

      The control is unavailable in this context.
      See Also:
        W3C HTML Specification

    - #### setDisabled

          public final void setDisabled(java.lang.String disabled)

      The control is unavailable in this context.
      See Also:
        W3C HTML Specification

    - #### setMultiple

          public final void setMultiple(boolean multiple)

      If true, multiple OPTION elements may be selected in this SELECT.
      See Also:
        W3C HTML Specification

    - #### setName

          public final void setName(java.lang.String name)

      Form control or object name when submitted with a form.
      See Also:
        W3C HTML Specification

    - #### setSelectedIndex

          public final void setSelectedIndex(int index)

      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.

    - #### setSize

          public final void setSize(int size)

      Number of visible rows.
      See Also:
        W3C HTML Specification

    - #### setType

          public final void setType(java.lang.String type)

      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.

    - #### setValue

          public final void setValue(java.lang.String value)

      The current form control value (i.e., the value of the currently selected option), if multiple options are selected this is the value of the first selected option.