11.23. Creating Auto-Complete Text Fields

Problem

You want to create auto-complete input text fields in which entering a few letters automatically fills in a previously entered value.

Solution

Use a shared object to store the previously entered values for a text field. Then use the onChanged( ), onSetFocus( ), and onKillFocus( ) methods of the text field to create, position, size, and populate a list box with possible values.

Discussion

Internet Explorer and similar browsers offer a feature that remembers values that users have previously entered for a text field in an HTML form. When a user brings focus to the text field, she can use the arrow keys or the mouse to select from a list of previously entered values. This feature can help the user save time typing if she wants to fill out the form with values similar to those entered previously. Flash text fields do not have this kind of functionality built into them, but with a little bit of work, you can add this feature to your forms.

You can use a local shared object to store previously entered values for text fields within a domain. Then you can use a list box to display those values to the user when she brings focus to a text field. As the user types into the text field, the values in the list box should be updated to partially match the string she has entered into the text field. For example, if the user types a “t” in the text field, the list box should display only those values that begin with “t.” And if the user selects ...

Get Actionscript Cookbook now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.