Rendered as a listbox with the MULTIPLE attribute set to false.
The available choices are defined via child f:selectItem or f:selectItems elements. The size of the listbox defaults to the number of available choices; if size is explicitly set to a smaller value, then scrollbars will be rendered. If size is set to 1 then a "drop-down menu" (aka "combo-box") is rendered, though if this is the intent then selectOneMenu should be used instead.
The value attribute of this component is read to determine which of the available options is initially selected; its value should match the "value" property of one of the child SelectItem objects.
On submit of the enclosing form, the value attribute's bound property is updated to contain the "value" property from the chosen SelectItem.
Unless otherwise specified, all attributes accept static values or EL expressions.
Attributes |
Name | Required | Request-time | Type | Description |
id | false | false | java.lang.String | The developer-assigned ID of this component. The ID must be unique within the scope of the tag's enclosing naming container (e.g. h:form or f:subview). This value must be a static value. |
binding | false | false | java.lang.String | Identifies a backing bean property (of type UIComponent or appropriate subclass) to bind to this component instance. This value must be an EL expression. |
rendered | false | false | java.lang.String | A boolean value that indicates whether this component should be rendered. Default value: true. |
value | false | false | java.lang.String | The initial value of this component. This value is generally set as a value-binding in the form #{myBean.myProperty}, where myProperty can be any data-type of Java (also user-defined data-types), if a converter for this data-type exists. Special cases: 1) f:selectItems - value needs to bind to a list (or an array) of javax.faces.model.SelectItem-instances 2) components implementing UISelectMany (e.g. h:selectManyCheckbox) - value needs to bind to a list (or an array) of values, where the values need to be of the same data-type as the choices of the associated f:selectItems-component 3) components implementing UIData (e.g. h:dataTable) - value needs to bind to a list (or an array) of values, which will be iterated over when the data-table is processed |
converter | false | false | java.lang.String | An expression that specifies the Converter for this component. If the value binding expression is a String, the String is used as an ID to look up a Converter. If the value binding expression is a Converter, uses that instance as the converter. The value can either be a static value (ID case only) or an EL expression. |
immediate | false | false | java.lang.String | A boolean value that identifies the phase during which value change events should fire. During normal event processing, value change events are fired during the "process validations" phase of request processing. If this attribute is set to "true", these methods are fired instead at the end of the "apply request values" phase. |
required | false | false | java.lang.String | A boolean value that indicates whether an input value is required. If this value is true, and no input value is provided, the error message javax.faces.component.UIInput.REQUIRED is posted. |
validator | false | false | java.lang.String | A method binding EL expression, accepting FacesContext, UIComponent, and Object parameters, and returning void, that validates the component's local value. |
valueChangeListener | false | false | java.lang.String | A method binding EL expression, accepting a ValueChangeEvent parameter and returning void. The specified method is invoked if this component is modified. The phase that this handler is fired in can be controlled via the immediate attribute. |
dir | false | false | java.lang.String | HTML: The direction of text display, either 'ltr' (left-to-right) or 'rtl' (right-to-left). |
lang | false | false | java.lang.String | HTML: The base language of this document. |
style | false | false | java.lang.String | HTML: CSS styling instructions. |
title | false | false | java.lang.String | HTML: An advisory title for this element. Often used by the user agent as a tooltip. |
styleClass | false | false | java.lang.String | The CSS class for this element. Corresponds to the HTML 'class' attribute. |
onclick | false | false | java.lang.String | HTML: Script to be invoked when the element is clicked. |
ondblclick | false | false | java.lang.String | HTML: Script to be invoked when the element is double-clicked. |
onmousedown | false | false | java.lang.String | HTML: Script to be invoked when the pointing device is pressed over this element. |
onmouseup | false | false | java.lang.String | HTML: Script to be invoked when the pointing device is released over this element. |
onmouseover | false | false | java.lang.String | HTML: Script to be invoked when the pointing device is moved into this element. |
onmousemove | false | false | java.lang.String | HTML: Script to be invoked when the pointing device is moved while it is in this element. |
onmouseout | false | false | java.lang.String | HTML: Script to be invoked when the pointing device is moves out of this element. |
onkeypress | false | false | java.lang.String | HTML: Script to be invoked when a key is pressed over this element. |
onkeydown | false | false | java.lang.String | HTML: Script to be invoked when a key is pressed down over this element. |
onkeyup | false | false | java.lang.String | HTML: Script to be invoked when a key is released over this element. |
accesskey | false | false | java.lang.String | HTML: Sets the access key for this element. |
onblur | false | false | java.lang.String | HTML: Specifies a script to be invoked when the element loses focus. |
onfocus | false | false | java.lang.String | HTML: Specifies a script to be invoked when the element receives focus. |
onchange | false | false | java.lang.String | HTML: Specifies a script to be invoked when the element is modified. |
onselect | false | false | java.lang.String | HTML: Specifies a script to be invoked when the element is selected. |
tabindex | false | false | java.lang.String | HTML: Specifies the position of this element within the tab order of the document. |
readonly | false | false | java.lang.String | HTML: When true, indicates that this component cannot be modified by the user. The element may receive focus unless it has also been disabled. |
disabled | false | false | java.lang.String | HTML: When true, this element cannot receive focus. |
datafld | false | false | java.lang.String | Reserved for future use. |
datasrc | false | false | java.lang.String | Reserved for future use. |
dataformatas | false | false | java.lang.String | Reserved for future use. |
size | false | false | java.lang.String | see JSF Spec. |
enabledClass | false | false | java.lang.String | No Description |
disabledClass | false | false | java.lang.String | No Description |