| Task |
|---|
WML允許你當某些事件發生時,可以指定某些特定的 Task(任務),例如指定到某些特定的Card上
WML包括了四個任務成員(Task element)
| Go | Prev | Noop | Refresh |
|---|
任務(Task)被限制在下列的事件(Event)中
do
onevent
一個anchor 成員可能包括 “ go “ “prev” 或者 “refresh” 等任務(task)
| ☉ |
GO Task |
|---|
一個go 的成員宣告一個go的任務,暗指探索一個超連結, 如果超連結是一個WML的Card或Deck,它將被顯示出來, 一個go相當於執行一個在堆疊中的push的動作
|
包含的成員(element) |
|---|
setvar *
postfield *
| go 屬性表: |
|---|
| href=href | 這個屬性為指定一個目的地的 URI,例如card的 URI被顯示 (此屬性為必須) |
|---|---|
| sendreferer=boolean | 如果此屬性值為True, 使用者代理人允許伺服器顯示在URI的存取控制格式,如果你要限制存取 你的服務功能,decks的URI的要求必須設定為True,預設值為False |
| method=(post|get) | 此屬性決定http的遞送方法,預設值為get |
| accept-charest=CDATA | 此屬性指定當server處理輸入資料的編碼格式 |
| id | 見” 一般屬性” |
| class | 見” 一般屬性” |
成員(element)也許包含一個或更多個postfield的成員, 這些成員能夠在request時,傳遞一些資訊給Server,這些被遞送的欄位資料, 以下列方式處理
|
範例 [30] |
|---|
在下列的例子中,成員go 將使用get的方法傳遞到此URL “/foo?x=1” :
|
<go href=”/foo”> <postfield name=”x” value=”1”/> </go> |
|---|
在下列的例子中,使用post方法傳遞下列訊息 ” w=12&y=test”到URL “/bar”
|
<go href=”/bar” method=post> <postfield name=”w” value=”12”/> <postfield name=”y” value=”test”/> </go> |
|---|
下列的例子將建立一個有標籤Help的使用者介面且能夠進入名字為 help的card,當它被觸發時
|
< card id=”card1”> <do type=”help” label=”Help”> <go href=”#help”/> </do> </card> <card id=”help”> <p> Help topics </p> </card> |
|---|
| ☉ |
prev Task |
|---|
成員 prev ,宣告一個”prev”的任務,暗指將回到以前的URI,在堆疊中, 一個prev是將堆疊pop 一個URI出來,並將目前的放入堆疊中,如果沒有任何URI 在堆疊中,此成員無任何影響.
| 包含成員 |
|---|
setvar *
| 屬性表: |
|---|
| id | 見” 一般屬性” |
|---|---|
| class | 見” 一般屬性” |
| 範例[31] |
|---|
下例為建立一個標籤為Back的使用者介面,當觸發時能夠回到以前的card
|
<do type=”accept” label=”Back”> <prev/> </do> <p> Hello, World!! </p> |
|---|
| ☉ |
refresh task |
|---|
描述:
成員 refresh 為宣告一個更新的任務,能夠更新指定的card的值, 使用者可以看到狀態的改變,即使沒有成員 setvar 被給予, 其更新和邊際影響也會改變其內容
| 包含成員 |
|---|
setvar *
| 屬性表: |
|---|
| id | 見” 一般屬性” |
|---|---|
| class | 見” 一般屬性” |
|
範例 [32] |
|---|
下列的WML將為變數product設一個foo的值而且更新,顯示其值
|
<refresh> <setvar name=”product” value=”foo”/> </refresh> |
|---|
| ☉ |
noop task
|
|---|
| 屬性表: |
|---|
| id | 見” 一般屬性” |
|---|---|
| class | 見” 一般屬性” |