This example has been deprecated and will no longer be supported. Please note that the SWF functionality of the Storage Utility requires that you host swfstore.swf on your own servers. YUI 2 is now in maintenance mode, so no future updates are planned and only critical fixes will be considered. For more information, please refer to the following blog posts:
This example consists of two text fields, a few Buttons and a DataTable. The Buttons allow you to save data, set properties on your
YAHOO.util.Storage instance, or clear all items from storage.
Once the page is drawn, initialize is called to instantiate a
YAHOO.util.Storage instance and set up some listeners. We also disable all of the Buttons until the
YAHOO.util.Storage instance is ready.
storage is ready, it will dispatch a
storage.CE_READY event. We can then enable the Buttons and initialize a DataTable with any previously stored values.
Because items are stored as key/value pairs, we need to loop through them to turn them into name-value pairs suitable for use with the DataTable.
load function is called on page initialization and each time you switch engine options, creating or updating
datatable as necessary.
The save Button is set up to take the values from the text fields and store them, using the setItem method of
Similarly, a couple of other Buttons are set up to remove items from
storage, either by name or index, or by clearing the entire local store.
We've already set up a listener for a
storage.CE_CHANGE event, which is dispatched whenever an item is successfully added, updated, or deleted.
That calls this function, which loops through the DataTable.
Using the info property of the event, we can determine what type of change occurred, and either add rows to it, delete rows from it, or update its current values.
Note: Logging and debugging is currently turned off for this example.
All YUI 2.x users should review the YUI 2.8.2 security bulletin, which discusses a vulnerability present in YUI 2.4.0-2.8.1.