org.apache.struts2.components
Class Select
java.lang.Object
org.apache.struts2.components.Component
org.apache.struts2.components.UIBean
org.apache.struts2.components.ListUIBean
org.apache.struts2.components.Select
- Direct Known Subclasses:
- UpDownSelect
public class Select
- extends ListUIBean
Render an HTML input tag of type select.
Examples
<s:select label="Pets"
name="petIds"
list="petDao.pets"
listKey="id"
listValue="name"
multiple="true"
size="3"
required="true"
/>
<s:select label="Months"
name="months"
headerKey="-1" headerValue="Select Month"
list="#{'01':'Jan', '02':'Feb', [...]}"
value="selectedMonth"
required="true"
/>
// The month id (01, 02, ...) returned by the getSelectedMonth() call
// against the stack will be auto-selected
Note: For any of the tags that use lists (select probably being the most ubiquitous), which uses the OGNL list
notation (see the "months" example above), it should be noted that the map key created (in the months example,
the '01', '02', etc.) is typed. '1' is a char, '01' is a String, "1" is a String. This is important since if
the value returned by your "value" attribute is NOT the same type as the key in the "list" attribute, they
WILL NOT MATCH, even though their String values may be equivalent. If they don't match, nothing in your list
will be auto-selected.
Fields inherited from class org.apache.struts2.components.UIBean |
accesskey, cssClass, cssStyle, disabled, label, labelPosition, name, onblur, onchange, onclick, ondblclick, onfocus, onkeydown, onkeypress, onkeyup, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onselect, request, required, requiredposition, response, tabindex, template, templateDir, templateSuffix, theme, title, tooltip, tooltipConfig, value |
Constructor Summary |
Select(com.opensymphony.xwork2.util.OgnlValueStack stack,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
Method Summary |
void |
evaluateExtraParams()
|
protected java.lang.String |
getDefaultTemplate()
A contract that requires each concrete UI Tag to specify which template should be used as a default. |
void |
setEmptyOption(java.lang.String emptyOption)
Whether or not to add an empty (--) option after the header option |
void |
setHeaderKey(java.lang.String headerKey)
Key for first item in list. |
void |
setHeaderValue(java.lang.String headerValue)
Value expression for first item in list |
void |
setMultiple(java.lang.String multiple)
Creates a multiple select. |
void |
setSize(java.lang.String size)
Size of the element box (# of elements to show) |
Methods inherited from class org.apache.struts2.components.UIBean |
addFormParameter, buildTemplateName, enableAncestorFormCustomOnsubmit, end, escape, evaluateNameValue, evaluateParams, getTemplate, getTemplateDir, getTheme, getTooltipConfig, mergeTemplate, populateComponentHtmlId, setAccesskey, setCssClass, setCssStyle, setDisabled, setLabel, setLabelposition, setName, setOnblur, setOnchange, setOnclick, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setOnselect, setRequired, setRequiredposition, setTabindex, setTemplate, setTemplateDir, setTheme, setTitle, setTooltip, setTooltipConfig, setValue |
Methods inherited from class org.apache.struts2.components.Component |
addAllParameters, addParameter, altSyntax, copyParams, determineActionURL, determineNamespace, end, fieldError, findAncestor, findString, findString, findValue, findValue, findValue, getComponentStack, getId, getParameters, getStack, popComponentStack, setId, start, toString, usesBody |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TEMPLATE
public static final java.lang.String TEMPLATE
- See Also:
- Constant Field Values
emptyOption
protected java.lang.String emptyOption
headerKey
protected java.lang.String headerKey
headerValue
protected java.lang.String headerValue
multiple
protected java.lang.String multiple
size
protected java.lang.String size
Select
public Select(com.opensymphony.xwork2.util.OgnlValueStack stack,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
getDefaultTemplate
protected java.lang.String getDefaultTemplate()
- Description copied from class:
UIBean
- A contract that requires each concrete UI Tag to specify which template should be used as a default. For
example, the CheckboxTab might return "checkbox.vm" while the RadioTag might return "radio.vm". This value
not begin with a '/' unless you intend to make the path absolute rather than relative to the
current theme.
- Specified by:
getDefaultTemplate
in class UIBean
- Returns:
- The name of the template to be used as the default.
evaluateExtraParams
public void evaluateExtraParams()
- Overrides:
evaluateExtraParams
in class ListUIBean
setEmptyOption
public void setEmptyOption(java.lang.String emptyOption)
- Whether or not to add an empty (--) option after the header option
setHeaderKey
public void setHeaderKey(java.lang.String headerKey)
- Key for first item in list. Must not be empty! "'-1'" and "''" is correct, "" is bad.
setHeaderValue
public void setHeaderValue(java.lang.String headerValue)
- Value expression for first item in list
setMultiple
public void setMultiple(java.lang.String multiple)
- Creates a multiple select. The tag will pre-select multiple values if the values are passed as an Array (of appropriate types) via the value attribute. Passing a Collection may work too? Haven't tested this.
setSize
public void setSize(java.lang.String size)
- Size of the element box (# of elements to show)
Copyright © 2000-2006 Apache Software Foundation. All Rights Reserved.