O'Reilly logo

Learning WML, and WMLScript by Martin Frost

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Events

An event in WML is simply something that can happen to some element from time to time. For example, entering a <card> element triggers an event on the <card>, and selecting an <option> from a selection list triggers an event on the <option>.

You can harness these events by binding them to a task. The usual way of doing this is with the <onevent> element. As mentioned earlier in this chapter, for simple <go> tasks you can usually make use of a simpler form: this will be mentioned when when we discuss the elements in question.

For example, the <option> element (detailed in Chapter 4) declares an item in a list of selections. When this item is selected, it triggers an onpick event on the <option> element. Suppose the element were declared without an event handler, like this:

<option>
    Purple
</option>

In this case, the onpick event is ignored, since there is no handler. If, on the other hand, the option is declared as:

<option>
    <onevent type="onpick">
        <go href="#purple"/>
    </onevent>

    Purple
</option>

the onpick event is handled by executing the <go> task, sending the browser to a new card.

The <onevent> Element

The <onevent> element declares an event binding. It can’t contain anything except a single task element that is performed when the event occurs. It may be present inside either an <option> element (see Chapter 4) or a <card> element (see Chapter 6). In either case, the <onevent> element (or elements) must be the first elements declared inside their enclosing element.

The ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required