The Spring Framework

## org.springframework.web.servlet.tags.form
Class OptionTag

    java.lang.Object
      javax.servlet.jsp.tagext.TagSupport
          org.springframework.web.servlet.tags.RequestContextAwareTag
              org.springframework.web.servlet.tags.HtmlEscapingAwareTag
                  org.springframework.web.servlet.tags.form.AbstractFormTag
                      org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
                          org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
                              org.springframework.web.servlet.tags.form.AbstractHtmlElementBodyTag
                                  org.springframework.web.servlet.tags.form.OptionTag

All Implemented Interfaces:
  Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally, EditorAwareTag

    public class OptionTag

extends AbstractHtmlElementBodyTag
implements BodyTag

JSP tag for rendering an HTML '`option`' tag.

Must be used nested inside a `SelectTag`.

Provides full support for databinding by marking an '`option`' as 'selected' if the `value` matches the value bound to the out `SelectTag`.

The `value` property is required and corresponds to the '`value`' attribute of the rendered '`option`'.

An optional `label` property can be specified, the value of which corresponds to inner text of the rendered '`option`' tag. If no `label` is specified then the `value` property will be used when rendering the inner text.

Since:
  2.0
Author:
  Rob Harrop, Juergen Hoeller
See Also:
  Serialized Form

Field Summary
`static String` `DISPLAY_VALUE_VARIABLE_NAME` The name of the JSP variable used to expose the display value for this tag.
`static String` `VALUE_VARIABLE_NAME` The name of the JSP variable used to expose the value for this tag.

Fields inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
`CLASS_ATTRIBUTE, DIR_ATTRIBUTE, LANG_ATTRIBUTE, ONCLICK_ATTRIBUTE, ONDBLCLICK_ATTRIBUTE, ONKEYDOWN_ATTRIBUTE, ONKEYPRESS_ATTRIBUTE, ONKEYUP_ATTRIBUTE, ONMOUSEDOWN_ATTRIBUTE, ONMOUSEMOVE_ATTRIBUTE, ONMOUSEOUT_ATTRIBUTE, ONMOUSEOVER_ATTRIBUTE, ONMOUSEUP_ATTRIBUTE, STYLE_ATTRIBUTE, TABINDEX_ATTRIBUTE, TITLE_ATTRIBUTE`

Fields inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
`COMMAND_NAME_VARIABLE_NAME, NESTED_PATH_VARIABLE_NAME`

Fields inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag
`logger, REQUEST_CONTEXT_PAGE_ATTRIBUTE`

Fields inherited from class javax.servlet.jsp.tagext.TagSupport
`pageContext`

Fields inherited from interface javax.servlet.jsp.tagext.BodyTag
`EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
`EVAL_BODY_AGAIN`

Fields inherited from interface javax.servlet.jsp.tagext.Tag
`EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

Constructor Summary
`OptionTag()`

Method Summary
`protected String` `autogenerateId()` Autogenerate the '`id`' attribute value for this tag.
`protected void` `exposeAttributes()` Called during `AbstractHtmlElementBodyTag.writeTagContent(org.springframework.web.servlet.tags.form.TagWriter)` allowing subclasses to add any attributes to the `PageContext` as needed.
`protected BindStatus` `getBindStatus()` Get the `BindStatus` for this tag.
`protected String` `getDisabled()` Get the value of the '`disabled`' attribute.
`protected String` `getLabel()` Get the text body of the rendered HTML `<option>` tag.
`protected Object` `getValue()` Get the 'value' attribute of the rendered HTML `<option>` tag.
`protected boolean` `isDisabled()` Is the current HTML tag disabled?
`protected void` `onWriteTagContent()` Make sure we are under a '`select`' tag before proceeding.
`protected void` `removeAttributes()` Called by `AbstractHtmlElementBodyTag.doFinally()` allowing subclasses to remove any attributes from the `PageContext` as needed.
`protected void` `renderDefaultContent(TagWriter tagWriter)`
`protected void` `renderFromBodyContent(BodyContent bodyContent, TagWriter tagWriter)` Render the tag contents based on the supplied `BodyContent`.
`void` `setDisabled(String disabled)` Set the value of the '`disabled`' attribute.
`void` `setLabel(String label)` Set the text body of the rendered HTML `<option>` tag.
`void` `setValue(Object value)` Set the 'value' attribute of the rendered HTML `<option>` tag.

Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementBodyTag
`doEndTag, doFinally, doInitBody, flushBufferedBodyContent, setBodyContent, shouldRender, writeTagContent`

Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag

`getCssClass, getCssErrorClass, getCssStyle, getDir, getLang, getOnclick, getOndblclick, getOnkeydown, getOnkeypress, getOnkeyup, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup, getTabindex, getTitle, resolveCssClass, setCssClass, setCssErrorClass, setCssStyle, setDir, setLang, setOnclick, setOndblclick, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setTabindex, setTitle, writeDefaultAttributes, writeOptionalAttributes`

Methods inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
`getBoundValue, getEditor, getId, getName, getNestedPath, getPath, getPropertyEditor, getPropertyPath, resolveId, setId, setPath`

Methods inherited from class org.springframework.web.servlet.tags.form.AbstractFormTag
`createTagWriter, doStartTagInternal, evaluate, getDisplayString, getDisplayString, isDefaultHtmlEscape, writeOptionalAttribute`

Methods inherited from class org.springframework.web.servlet.tags.HtmlEscapingAwareTag
`isHtmlEscape, setHtmlEscape`

Methods inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag
`doCatch, doStartTag, getRequestContext`

Methods inherited from class javax.servlet.jsp.tagext.TagSupport
`doAfterBody, findAncestorWithClass, getParent, getValue, getValues, release, removeValue, setPageContext, setParent, setValue`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface javax.servlet.jsp.tagext.BodyTag
`doInitBody, setBodyContent`

Methods inherited from interface javax.servlet.jsp.tagext.IterationTag
`doAfterBody`

Methods inherited from interface javax.servlet.jsp.tagext.Tag
`doEndTag, doStartTag, getParent, release, setPageContext, setParent`

Field Detail

### VALUE_VARIABLE_NAME

    public static final String VALUE_VARIABLE_NAME

  The name of the JSP variable used to expose the value for this tag.

  See Also:
    Constant Field Values

### DISPLAY_VALUE_VARIABLE_NAME

    public static final String DISPLAY_VALUE_VARIABLE_NAME

  The name of the JSP variable used to expose the display value for this tag.

  See Also:
    Constant Field Values

Constructor Detail

### OptionTag

    public OptionTag()

Method Detail

### setValue

    public void setValue(Object value)

  Set the 'value' attribute of the rendered HTML `<option>` tag.

  May be a runtime expression.

### getValue

    protected Object getValue()

  Get the 'value' attribute of the rendered HTML `<option>` tag.

### setDisabled

    public void setDisabled(String disabled)

  Set the value of the '`disabled`' attribute.

  May be a runtime expression.

  Parameters:
    `disabled` - the value of the '`disabled`' attribute

### getDisabled

    protected String getDisabled()

  Get the value of the '`disabled`' attribute.

### isDisabled

    protected boolean isDisabled()

  Is the current HTML tag disabled?

  Returns:
    `true` if this tag is disabled

### setLabel

    public void setLabel(String label)

  Set the text body of the rendered HTML `<option>` tag.

  May be a runtime expression.

### getLabel

    protected String getLabel()

  Get the text body of the rendered HTML `<option>` tag.

### renderDefaultContent

    protected void renderDefaultContent(TagWriter tagWriter)
                                 throws JspException

  Specified by:
    `renderDefaultContent` in class `AbstractHtmlElementBodyTag`
  Throws:
    `JspException`

### renderFromBodyContent

    protected void renderFromBodyContent(BodyContent bodyContent,
                                         TagWriter tagWriter)
                                  throws JspException

  Description copied from class: `AbstractHtmlElementBodyTag`
  Render the tag contents based on the supplied `BodyContent`.

  The default implementation simply `flushes` the `BodyContent` directly to the output. Subclasses may choose to override this to add additional content to the output.

  Overrides:
    `renderFromBodyContent` in class `AbstractHtmlElementBodyTag`
  Throws:
    `JspException`

### onWriteTagContent

    protected void onWriteTagContent()

  Make sure we are under a '`select`' tag before proceeding.

  Overrides:
    `onWriteTagContent` in class `AbstractHtmlElementBodyTag`

### exposeAttributes

    protected void exposeAttributes()
                             throws JspException

  Description copied from class: `AbstractHtmlElementBodyTag`
  Called during `AbstractHtmlElementBodyTag.writeTagContent(org.springframework.web.servlet.tags.form.TagWriter)` allowing subclasses to add any attributes to the `PageContext` as needed.

  Overrides:
    `exposeAttributes` in class `AbstractHtmlElementBodyTag`
  Throws:
    `JspException`

### getBindStatus

    protected BindStatus getBindStatus()

  Description copied from class: `AbstractDataBoundFormElementTag`
  Get the `BindStatus` for this tag.

  Overrides:
    `getBindStatus` in class `AbstractDataBoundFormElementTag`

### removeAttributes

    protected void removeAttributes()

  Description copied from class: `AbstractHtmlElementBodyTag`
  Called by `AbstractHtmlElementBodyTag.doFinally()` allowing subclasses to remove any attributes from the `PageContext` as needed.

  Overrides:
    `removeAttributes` in class `AbstractHtmlElementBodyTag`

### autogenerateId

    protected String autogenerateId()
                             throws JspException

  Description copied from class: `AbstractDataBoundFormElementTag`
  Autogenerate the '`id`' attribute value for this tag.

  The default implementation simply delegates to `AbstractDataBoundFormElementTag.getName()`, deleting invalid characters (such as "[" or "]").

  Overrides:
    `autogenerateId` in class `AbstractDataBoundFormElementTag`
  Throws:
    `JspException`

The Spring Framework

Copyright © 2002-2008 The Spring Framework.