WML - язык разметки

Автор статьи: Жарков Алексей
Сайт Автора: tay.ru
E-mail Автора: AZharkov@renins.com
Дата публикации: 27.05.2006


Создаем деку


В этом примере, мы начнем создавать деку, которая позволяет нам сначала выбрать имя пользователя из предложенного списка, затем ввести пароль после чего выводит на экран полученные данные.

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
       <card id="Login" title="Login">
               <do type="accept" label="Password">
                       <go href="#Password"/>
               </do>
               <p>
               UserName:
               <select name="name" title="Name:">
                       <option value="John Doe">John Doe</option>
                       <option value="Paul Smith">Paul Smith</option>
                       <option value="Joe Dean">Joe Dean</option>
                       <option value="Bill Todd">Bill Todd</option>
               </select>
               </p>
       </card>
       <card id="Password" title="Password:">
               <do type="accept" label="Results">
                       <go href="#Results"/>
               </do>
               <p>
               Password: <input type="text" name="password"/>
               </p>
       </card>
       <card id="Results" title="Results:">
       <p>
       You entered:<br/>
       Name: $(name)<br/>
Password: $(password)<br/>
       </p>
       </card>
</wml>

Как вы наверно уже заметили, вначале примера идет пролог, в котором мы определяем версию XML и DTD для нашего документа. Затем следует элемент <wml>, дека которая содержит три карты: Login, Password и Result. Каждая из этих карт определяется с использованием элемента <card>. Поскольку карты Login и Password определяют события, они используют элемент <do type="accept"> для определения события которое произойдет, когда пользователь закончит ввод.

Если мы определяем элемент <do> типом "accept" он появляется на экране в качестве опции

Выбор этой опции приведет к анализу введенной пользователем информации.

Атрибут "href" тега <go> работает так же, как и в элементе <a> из HTML. Также как и в HTML, для того, чтобы на экран вывелась другая карты из активной деки, на нее надо сослаться используя символ "#" перед именем карты.

<go href="#result"/>

Эта карта обрабатывает пользовательский ввод и используя определенные в предыдущей карте переменные выводит их содержимое на экран. Вызов переменных осуществляется следующим образом:

$(variable_name)