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: • Java Script to Dynamically Add, Remove, and Change Items in a Select List • HTML5 Canvas lineCap and lineJoin Attributes • Calculate The Points of an Equilateral Triangle • Easy Java Script Animation • Java Script Code to Re-arrange Items in a Select List • JavaScript to Add and Remove Rows and Cells from a Table • JavaScript Code to Restrict Keyboard Entries • Easy Code for Animated Banner - Squeeze Text • Code for a Less annoying Popup Window • Debugging JavaScript : Coercions
|