Class SelectTag
- java.lang.Object
- All Implemented Interfaces:
Serializable
,DynamicAttributes
,IterationTag
,JspTag
,Tag
,TryCatchFinally
,EditorAwareTag
public class SelectTag extends AbstractHtmlInputElementTag
Databinding-aware JSP tag that renders an HTML 'select
' element.Inner '
option
' tags can be rendered using one of the approaches supported by the OptionWriter class.Also supports the use of nested
OptionTags
or (typically one) nestedOptionsTag
.- Since:
- 2.0
- Author:
- Rob Harrop, Juergen Hoeller
- See Also:
OptionTag
, Serialized Form
Field Summary
Fields Modifier and Type Field Description static String
LIST_VALUE_PAGE_ATTRIBUTE
ThePageContext
attribute under which the bound value is exposed to innerOptionTags
.Fields inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlInputElementTag
ACCESSKEY_ATTRIBUTE, DISABLED_ATTRIBUTE, ONBLUR_ATTRIBUTE, ONCHANGE_ATTRIBUTE, ONFOCUS_ATTRIBUTE, READONLY_ATTRIBUTE
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
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.IterationTag
EVAL_BODY_AGAIN
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
Constructor Summary
Constructors Constructor Description SelectTag()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
doEndTag()
Closes any block tag that might have been opened when using nestedoptions
.void
doFinally()
protected String
getItemLabel()
Get the value of the 'itemLabel
' attribute.protected Object
getItems()
Get the value of the 'items
' attribute.protected String
getItemValue()
Get the value of the 'itemValue
' attribute.protected Object
getMultiple()
Get the value of the HTML 'multiple
' attribute rendered on the final 'select
' element.protected String
getSize()
Get the value of the 'size
' attribute.void
setItemLabel(String itemLabel)
Set the name of the property mapped to the label (inner text) of the 'option
' tag.void
setItems(Object items)
void
setItemValue(String itemValue)
Set the name of the property mapped to the 'value
' attribute of the 'option
' tag.void
setMultiple(Object multiple)
Set the value of the HTML 'multiple
' attribute rendered on the final 'select
' element.void
setSize(String size)
Set the value of the HTML 'size
' attribute rendered on the final 'select
' element.protected int
writeTagContent(TagWriter tagWriter)
Renders the HTML 'select
' tag to the suppliedTagWriter
.Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlInputElementTag
getAccesskey, getOnblur, getOnchange, getOnfocus, isDisabled, isReadonly, setAccesskey, setDisabled, setOnblur, setOnchange, setOnfocus, setReadonly, writeOptionalAttributes
Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
getCssClass, getCssErrorClass, getCssStyle, getDir, getDynamicAttributes, getLang, getOnclick, getOndblclick, getOnkeydown, getOnkeypress, getOnkeyup, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup, getTabindex, getTitle, isValidDynamicAttribute, resolveCssClass, setCssClass, setCssErrorClass, setCssStyle, setDir, setDynamicAttribute, setLang, setOnclick, setOndblclick, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setTabindex, setTitle, writeDefaultAttributes
Methods inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
autogenerateId, convertToDisplayString, getBindStatus, getBoundValue, getEditor, getId, getName, getNestedPath, getPath, getPropertyEditor, getPropertyPath, processFieldValue, 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
htmlEscape, isHtmlEscape, isResponseEncodedHtmlEscape, 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
Field Detail
LIST_VALUE_PAGE_ATTRIBUTE
public static final String LIST_VALUE_PAGE_ATTRIBUTE
ThePageContext
attribute under which the bound value is exposed to innerOptionTags
.- See Also:
- Constant Field Values
Constructor Detail
SelectTag
public SelectTag()
Method Detail
setItems
public void setItems(Object items)
Set theCollection
,Map
or array of objects used to generate the inner 'option
' tags.Required when wishing to render '
option
' tags from an array,Collection
orMap
.Typically a runtime expression.
- Parameters:
items
- the items that comprise the options of this selection
getItems
protected Object getItems()
Get the value of the 'items
' attribute.May be 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 orCollection
.May be a runtime expression.
getItemValue
protected String getItemValue()
Get the value of the 'itemValue
' attribute.May be a runtime expression.
setItemLabel
public void setItemLabel(String itemLabel)
Set the name of the property mapped to the label (inner text) of the 'option
' tag.May be a runtime expression.
getItemLabel
protected String getItemLabel()
Get the value of the 'itemLabel
' attribute.May be a runtime expression.
setSize
public void setSize(String size)
Set the value of the HTML 'size
' attribute rendered on the final 'select
' element.
setMultiple
public void setMultiple(Object multiple)
Set the value of the HTML 'multiple
' attribute rendered on the final 'select
' element.
getMultiple
protected Object getMultiple()
Get the value of the HTML 'multiple
' attribute rendered on the final 'select
' element.
writeTagContent
protected int writeTagContent(TagWriter tagWriter) throws JspException
Renders the HTML 'select
' tag to the suppliedTagWriter
.Renders nested '
option
' tags if theitems
property is set, otherwise exposes the bound value for the nestedOptionTags
.- Specified by:
writeTagContent
in classAbstractFormTag
- Returns:
- valid tag render instruction as per
Tag.doStartTag()
. - Throws:
JspException
doEndTag
public int doEndTag() throws JspException
Closes any block tag that might have been opened when using nestedoptions
.- Specified by:
doEndTag
in interfaceTag
- Overrides:
doEndTag
in classTagSupport
- Throws:
JspException
doFinally
public void doFinally()
- Specified by:
doFinally
in interfaceTryCatchFinally
- Overrides:
doFinally
in classAbstractDataBoundFormElementTag