11.6. Detecting the Selected Menu Items
Problem
You want to get the user-selected value(s) from a menu.
Solution
Use getSelectedItem( )
(for both
combo boxes and list boxes) or
getSelectedItems( )
(for list boxes only).
Discussion
You can use the getSelectedItem( )
method to get
the selected value from a menu. The method returns an object with a
label
and a data
property,
representing the user-selected menu item. The
getSelectedItem( )
method works for both combo
boxes and single-selection list boxes. If you use
getSelectedItem( )
with a multiple-selection
list box, it returns the last selected item in the list:
// Displays thelabel
property of the selected item from a combo box. trace(myComboBox_cb.getSelectedItem( ).label); // Displays thedata
property of the selected item from a combo box. trace(myComboBox_cb.getSelectedItem( ).data);
Generally, the label
property is used for display
purposes, while the data
property is used to
submit the form data to a server for further processing.
If implementing a list box that allows multiple selections at once
(see Recipe 11.3), you should retrieve
the selections using getSelectedItems( )
, which
returns an array of objects with label
and
data
properties:
// Store the array of selected items inselectedItems
. selectedItems = myListBox_lb.getSelectedItems( ); // Display thelabel
anddata
properties of each element in theselectedItems
array. for (var i = 0; i < selectedItems.length; i++) { trace(selectedItems[i].label); trace(selectedItems[i].data); ...
Get Actionscript Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.