Drop-Down Lists
A drop-down list, presents a list of items from which one or more are chosen.
By clicking the down-arrow at the right of the list, the full list is exposed. An item is chosen
by clicking an entry.
Choose your favorite color:
Figure 10-23. A drop-down list.
The <select>
and <option>
Tags
The menu of choices is created with the <select>
tag. Inside this tag are
<option>
tags, one for each item in the list. The general formats for the
<select>
and <option>
tags are shown below.
<select
id="id"
name="name"
size="n"
multiple="multiple"
disabled="disabled"
>
<option
value="text"
selected="selected"
disabled="disabled"
>
Label
</option>
...
</select>
|
Figure 10-24. General formats for <select>
and <option>
tags.
The id Attribute
An id can be assigned to a drop-down list if there is a need to identify it
for browser script processing. Otherwise, an id is not needed.
The name Attribute
The drop-down list can be assigned a name with the name attribute coded in the
<select>
tag. The list name becomes associated with the value of the item selected
for certain types of server processing.
The <option>
Tag
Items are defined for appearance in a drop-down list with the <option>
tag.
There are as many tags as there are items in the list. The label for the option is entered between
the opening and closing tags. This is the text string that is visible in the list and becomes the
default value for the selection.
The value Attribute
By default, the value associated with a drop-down option is given by the text label included in
the <option>
tag. However, a value attribute can be coded to
supply a different value from the label. You might choose to do this when the labels are extended
text strings but you need only to collect abbreviated codes for the values.
The code below shows the basic tags and attributes needed to create a drop-down list. It produces
the list shown above in Figure 10-23.
Choose your favorite color:<br>
<select id="Color">
<option value="R">Red</option>
<option value="G">Green</option>
<option value="B">Blue</option>
<option value="Y">Yellow</option>
<option value="M">Maroon</option>
<option value="P">Purple</option>
<option value="A">Aqua</option>
<option value="T">Teal</option>
</select>
Listing 10-17. Basic code for a drop-down list.
The size Attribute
The size attribute of the <select>
tag indicates the number of
items that are visible in the list. By default, the list displays only one item. If a size is
specified, the list displays that number of items and, if necessary, a scroll bar to access them.
A drop-down list that uses the size attribute or displays more than one option is often referred
to as a selection list. The list shown below uses the attribute size="4" to
display four items at a time.
Choose your favorite color:
Figure 10-26. A selection list permitting multiple selections.
The selected Attribute
Items in the list can be pre-selected by coding the selected="selected" attribute
in the associated <option>
tag. Multiple pre-selections can be made only when
multiple="multiple" is coded for the <select>
tag. The selection list in
Figure 10-26 has three items (Red, Blue, Aqua) pre-selected.
The disabled Attribute
The disabled attribute is used to disable and grays out the control so that the
user can not interact with it. The disabled attribute is often associated with
controls that are assigned default values using the value attribute. With the
disabled attribute, users are not able to change or copy the default value.
The <optgroup>
Tag
The items in a drop-down list can be grouped using the <optgroup>
element.
The tag includes a label attribute that is used to specify the label for each group of
options in the list. The code below shows how the tag is used.
Select a Tree:<br>
<select id="Trees">
<optgroup label="Pines">
<option value="Longleaf">Long Leaf Pine</option>
<option value="Loblolly">Loblolly Pine</option>
</optgroup>
<optgroup label="Oaks">
<option value="Red">Southern Red Oak</option>
<option value="Live">Live Oak</option>
<option value="White">White Oak</option>
<option value="Scarlet">Scarlet Oak</option>
</optgroup>
<optgroup label="Elms">
<option value="American">American Elm</option>
<option value="Slippery">Slippery Elm</option>
</optgroup>
</select>
Select a Tree: