You can drag the Standard JavaServer Faces Dropdown List component
from
the Palette to the Visual Designer to create a Dropdown List (or combo
box) that enables the user to click a drop button and select
items from a list.
A Dropdown List is a list of items that initially displays as a single item and, when clicked, drops down into a list of multiple items. Only one item can be selected at a time. Dropdown Lists are the same as combo boxes in Swing and Microsoft Windows, and are called select lists in HTML.
A Dropdown List is a composite component: the enclosing component
(dropdown) manages the style and behavior of the list itself,
and the inside component (dropdownSelectItems) is used to bind
to the actual items in the list. A third, related component
named dropdownDefaultItems is created for each Dropdown List
component that you add to the page and contains an array of
static default items for the list (item1
, item2
,
item3
). This last component is not one that you typically
work with. You can see all these components in the
Navigator window after you add a Dropdown List to your page.
A Dropdown List renders as an HTML <select>
tag with the size=1
attribute.
The value property of the Dropdown List is not rendered on the screen but is used when the form is submitted. The value property refers to the currently selected list element. The list displayed in the component is controlled by the dropdownSelectItems part of the component.
After adding a Dropdown List Component to a Visual Web JSF page, you can do a number of things with it:
id
attribute. In the page bean, this property's value is
the name of the HtmlSelectOneMenu
object.dropdownSelectItems
part
of the component, not by the value property. See Fill
List From Database below for a typical way to set the
dropdownSelectItems part of the component.validate
method so you can insert code to validate the value
of the component.processValueChange
method so you can insert code that executes when the
value of this component changes (for example, the user
changes the value of another component that is controlling
the value of this component).value
property to an object or to a data provider, as described in Bind to Data Dialog Box. common_timeoutSubmitForm(this.form, 'component-id');
. At runtime, this code causes the form to be automatically submitted if the user changes the component value. Once the form is submitted, conversion and validation occur on the server and any value change listener methods execute, and then the page is redisplayed.
A component configured to Auto-Submit on Change can use virtual forms to limit the input fields that are processed when the form is submitted. If the auto-submit component is defined to submit a virtual form, only the participants in that virtual form will be processed when the auto-submit occurs.