Class OptionsTag

All Implemented Interfaces:
jakarta.servlet.jsp.tagext.DynamicAttributes, jakarta.servlet.jsp.tagext.IterationTag, jakarta.servlet.jsp.tagext.JspTag, jakarta.servlet.jsp.tagext.Tag, jakarta.servlet.jsp.tagext.TryCatchFinally, Serializable, EditorAwareTag

public class OptionsTag extends AbstractHtmlElementTag
The <options> tag renders a list of HTML 'option' tags. Sets 'selected' as appropriate based on bound value.

Must be used within a 'select' tag.

Attribute Summary

Attribute Required? Runtime Expression? Description

cssClass

false

true

HTML Optional Attribute

cssErrorClass

false

true

HTML Optional Attribute. Used when the bound field has errors.

cssStyle

false

true

HTML Optional Attribute

dir

false

true

HTML Standard Attribute

disabled

false

true

HTML Optional Attribute. Setting the value of this attribute to 'true' will disable the HTML element.

htmlEscape

false

true

Enable/disable HTML escaping of rendered values.

id

false

true

HTML Standard Attribute

itemLabel

false

true

Name of the property mapped to the inner text of the 'option' tag

items

true

true

The Collection, Map or array of objects used to generate the inner 'option' tags

itemValue

false

true

Name of the property mapped to 'value' attribute of the 'option' tag

lang

false

true

HTML Standard Attribute

onclick

false

true

HTML Event Attribute

ondblclick

false

true

HTML Event Attribute

onkeydown

false

true

HTML Event Attribute

onkeypress

false

true

HTML Event Attribute

onkeyup

false

true

HTML Event Attribute

onmousedown

false

true

HTML Event Attribute

onmousemove

false

true

HTML Event Attribute

onmouseout

false

true

HTML Event Attribute

onmouseover

false

true

HTML Event Attribute

onmouseup

false

true

HTML Event Attribute

tabindex

false

true

HTML Standard Attribute

title

false

true

HTML Standard Attribute

Since:
2.0
Author:
Rob Harrop, Juergen Hoeller, Scott Andrews, Sam Brannen
See Also:
  • Constructor Details

    • OptionsTag

      public OptionsTag()
  • Method Details

    • setItems

      public void setItems(Object items)
      Set the Collection, Map or array of objects used to generate the inner 'option' tags.

      Required when wishing to render 'option' tags from an array, Collection or Map.

      Typically a runtime expression.

    • getItems

      protected @Nullable Object getItems()
      Get the Collection, Map or array of objects used to generate the inner 'option' tags.

      Typically a runtime expression.

    • setItemValue

      public void setItemValue(String itemValue)
      Set the name of the property mapped to the 'value' attribute of the 'option' tag.

      Required when wishing to render 'option' tags from an array or Collection.

    • getItemValue

      protected @Nullable String getItemValue()
      Return the name of the property mapped to the 'value' attribute of the 'option' tag.
    • setItemLabel

      public void setItemLabel(String itemLabel)
      Set the name of the property mapped to the label (inner text) of the 'option' tag.
    • getItemLabel

      protected @Nullable String getItemLabel()
      Get the name of the property mapped to the label (inner text) of the 'option' tag.
    • setDisabled

      public void setDisabled(boolean disabled)
      Set the value of the 'disabled' attribute.
    • isDisabled

      protected boolean isDisabled()
      Get the value of the 'disabled' attribute.
    • writeTagContent

      protected int writeTagContent(TagWriter tagWriter) throws jakarta.servlet.jsp.JspException
      Description copied from class: AbstractFormTag
      Subclasses should implement this method to perform tag content rendering.
      Specified by:
      writeTagContent in class AbstractFormTag
      Returns:
      valid tag render instruction as per Tag.doStartTag().
      Throws:
      jakarta.servlet.jsp.JspException
    • resolveId

      protected @Nullable String resolveId() throws jakarta.servlet.jsp.JspException
      Appends a counter to a specified id, since we're dealing with multiple HTML elements.
      Overrides:
      resolveId in class AbstractDataBoundFormElementTag
      Throws:
      jakarta.servlet.jsp.JspException
      See Also:
    • getBindStatus

      protected BindStatus getBindStatus()
      Description copied from class: AbstractDataBoundFormElementTag
      Get the BindStatus for this tag.
      Overrides:
      getBindStatus in class AbstractDataBoundFormElementTag