WAP初级教程(8)—WML实例
一、WML的综合实例

有两张“card”的WML deck:一张用于用户输入,一张用于显示结果,可以进行设置,像下面例子中示范的那样:
<?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="card1" title="Tutorial">
<do type="accept" label="Answer">
 <go href="#card2"/>
 
</do>
<p>
<select name="name"> 
  <option value="HTML">HTML Tutorial</option>
 <option value="XML">XML Tutorial</option>
 
 <option value="WAP">WAP Tutorial</option>
</select>
</p>
</card>
 
<card id="card2" title="Answer">
 
<p>
You selected: $(name)
</p>
</card>
 
</wml>
 
 
 
 
手机显示的第一张“card“可能会像这样:
----- Tutorial ----------
 
 HTML Tutorial 
 
 XML Tutorial 
 WAP Tutorial 
 
Answer

第二张“card”可能会像这样:
----- Answer ----------
 
 You Selected: HTML
 
 

例子解释
序言
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
WML文档中的首几行叫做序言。序言指出了这是一份XML文档,然后定义了XML版本,和供参考的DTD文件
 
The Deck
<wml> ..... </wml>
Deck是WML文档本身。它被植入在<wml>标签里。
The Cards
<card> ..... </card>
“card”总是被显示一张。这里的WML deck包含两张card——一张用于用户输入一张用于显示结果。
<do>元素
<do> ... </do>

第一张card有个定义触发事件的<do>元素 。<do>元素的type="accept"属性会使label="Answer"显示在显示内容下方的左角。
The Event

当用户点击<do>标签时,<go>元素会被触发。<go>元素的href="#card2"属性会让card2显示在屏幕上。
The Variable

card2
显示了card1的$(name)变量,因为变量在不同card里仍是有效的。