Class SelectTag
- All Implemented Interfaces:
DynamicAttributes
,IterationTag
,JspTag
,Tag
,TryCatchFinally
,Serializable
,EditorAwareTag
<select>
tag renders an HTML 'select' element.
Supports data binding to the selected option.
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) nested OptionsTag
.
Attribute Summary
Attribute | Required? | Runtime Expression? | Description |
---|---|---|---|
accesskey |
false |
true |
HTML Standard Attribute |
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 |
false |
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 |
multiple |
false |
true |
HTML Optional Attribute |
onblur |
false |
true |
HTML Event Attribute |
onchange |
false |
true |
HTML Event Attribute |
onclick |
false |
true |
HTML Event Attribute |
ondblclick |
false |
true |
HTML Event Attribute |
onfocus |
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 |
path |
true |
true |
Path to property for data binding |
size |
false |
true |
HTML Optional Attribute |
tabindex |
false |
true |
HTML Standard Attribute |
title |
false |
true |
HTML Standard Attribute |
- Since:
- 2.0
- Author:
- Rob Harrop, Juergen Hoeller
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
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 jakarta.servlet.jsp.tagext.TagSupport
pageContext
Fields inherited from interface jakarta.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
Fields inherited from interface jakarta.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
doEndTag()
Closes any block tag that might have been opened when using nestedoptions
.void
protected String
Get the value of the 'itemLabel
' attribute.protected Object
getItems()
Get the value of the 'items
' attribute.protected String
Get the value of the 'itemValue
' attribute.protected Object
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
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
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 jakarta.servlet.jsp.tagext.TagSupport
doAfterBody, findAncestorWithClass, getParent, getValue, getValues, release, removeValue, setPageContext, setParent, setValue
-
Field Details
-
LIST_VALUE_PAGE_ATTRIBUTE
ThePageContext
attribute under which the bound value is exposed to innerOptionTags
.- See Also:
-
-
Constructor Details
-
SelectTag
public SelectTag()
-
-
Method Details
-
setItems
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
Get the value of the 'items
' attribute.May be a runtime expression.
-
setItemValue
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
Get the value of the 'itemValue
' attribute.May be a runtime expression.
-
setItemLabel
Set the name of the property mapped to the label (inner text) of the 'option
' tag.May be a runtime expression.
-
getItemLabel
Get the value of the 'itemLabel
' attribute.May be a runtime expression.
-
setSize
Set the value of the HTML 'size
' attribute rendered on the final 'select
' element. -
getSize
Get the value of the 'size
' attribute. -
setMultiple
Set the value of the HTML 'multiple
' attribute rendered on the final 'select
' element. -
getMultiple
Get the value of the HTML 'multiple
' attribute rendered on the final 'select
' element. -
writeTagContent
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
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
-