Allowing Multiple Selections from Drop-down Select List
By Stephen Bucaro
An HTML Select list is a form control used to create a drop-down list of items from which
the user can select. Each item in a select list is defined by an option element. You can
allow the user to select multiple items in the list by setting its multiple attribute.
Code for a select list with its multiple attribute set is shown below.
<form>
<select name="mySelect" size="7" multiple="multiple">
<option value="Bread">Bread</option>
<option value="Coffee">Coffee</option>
<option value="Fruit">Fruit</option>
<option value="Pie">Pie</option>
<option value="Salad">Salad</option>
<option value="Soup">Soup</option>
<option value="Wine">Wine</option>
</select>
<input type="button" value="Get Selection"
onclick="grabSelection(this.form.mySelect)">
</form>
The user can select multiple items in the list by pressing the Keyboard Ctrl key,
or by selecting an item and pressing and holding the Shift key while selecting another
item. This second method allows the user to select a range of items from the list.
When the user selects items in a select list, the selected property of the option
is set. The select list options are an array with indexes that start at 0 for the first
option. The code below shows one way to access the indexes of the options set to selected,
and then to access the value property of those options.
<script type="text/javascript">
function grabSelection(list)
{
var strMsg = "";
for(var i = 0; i < list.length; i++)
{
if(list.options[i].selected)
{
strMsg = strMsg + list.options[i].value + "\n";
}
}
alert(strMsg);
}
</script>
A select list is a form control, in this code the onclick event of the button
passes the select list to the grabSelection function. There may be other controls
in the form. In that case, you use the form button to pass the entire form.
More Java Script Code: • Regular Expression Basics : Match a Set of Characters • Using a Select List for Navigation • How to Shuffle the Deck With Java Script • Play Music on Your HTML5 Web Page • Java Script Math Object Trigonometric Methods • Sams Teach Yourself HTML5 in 10 Minutes • Submit Forms Without CGI • Java Script Message Boxes • Code for Java Script Cube / Box Volume Calculator • Code to Add Music to Your Webpage
|