public class SelectTag extends AbstractHtmlInputElementTag
<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 | 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 |
OptionTag
,
Serialized FormModifier and Type | Field and Description |
---|---|
static String |
LIST_VALUE_PAGE_ATTRIBUTE
The
PageContext attribute under
which the bound value is exposed to inner OptionTags . |
ACCESSKEY_ATTRIBUTE, DISABLED_ATTRIBUTE, ONBLUR_ATTRIBUTE, ONCHANGE_ATTRIBUTE, ONFOCUS_ATTRIBUTE, READONLY_ATTRIBUTE
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
NESTED_PATH_VARIABLE_NAME
logger, REQUEST_CONTEXT_PAGE_ATTRIBUTE
pageContext
EVAL_BODY_AGAIN
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
Constructor and Description |
---|
SelectTag() |
Modifier and Type | Method and Description |
---|---|
int |
doEndTag()
Closes any block tag that might have been opened when using
nested
options . |
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 supplied
TagWriter . |
getAccesskey, getOnblur, getOnchange, getOnfocus, isDisabled, isReadonly, setAccesskey, setDisabled, setOnblur, setOnchange, setOnfocus, setReadonly, writeOptionalAttributes
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
autogenerateId, convertToDisplayString, getBindStatus, getBoundValue, getEditor, getId, getName, getNestedPath, getPath, getPropertyEditor, getPropertyPath, processFieldValue, resolveId, setId, setPath
createTagWriter, doStartTagInternal, evaluate, getDisplayString, getDisplayString, isDefaultHtmlEscape, writeOptionalAttribute
htmlEscape, isHtmlEscape, isResponseEncodedHtmlEscape, setHtmlEscape
doCatch, doStartTag, getRequestContext
doAfterBody, findAncestorWithClass, getParent, getValue, getValues, release, removeValue, setPageContext, setParent, setValue
public static final String LIST_VALUE_PAGE_ATTRIBUTE
PageContext
attribute under
which the bound value is exposed to inner OptionTags
.public void setItems(@Nullable Object items)
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.
items
- the items that comprise the options of this selection@Nullable protected Object getItems()
items
' attribute.
May be a runtime expression.
public void setItemValue(String itemValue)
value
'
attribute of the 'option
' tag.
Required when wishing to render 'option
' tags from
an array or Collection
.
May be a runtime expression.
@Nullable protected String getItemValue()
itemValue
' attribute.
May be a runtime expression.
public void setItemLabel(String itemLabel)
option
' tag.
May be a runtime expression.
@Nullable protected String getItemLabel()
itemLabel
' attribute.
May be a runtime expression.
public void setSize(String size)
size
' attribute rendered
on the final 'select
' element.public void setMultiple(Object multiple)
multiple
' attribute rendered
on the final 'select
' element.@Nullable protected Object getMultiple()
multiple
' attribute rendered
on the final 'select
' element.protected int writeTagContent(TagWriter tagWriter) throws JspException
select
' tag to the supplied
TagWriter
.
Renders nested 'option
' tags if the
items
property is set, otherwise exposes the
bound value for the nested OptionTags
.
writeTagContent
in class AbstractFormTag
Tag.doStartTag()
.JspException
public int doEndTag() throws JspException
options
.doEndTag
in interface Tag
doEndTag
in class TagSupport
JspException
public void doFinally()
doFinally
in interface TryCatchFinally
doFinally
in class AbstractDataBoundFormElementTag