- 你所在位置:首页 〉VS.net〉XML〉WML〉WML 锚和任务
- WML 锚和任务
- 作者:佚名 文章来源:http://homepage.yesky.com/ 发布日期:2008-03-04 浏览次数:148
-
- 打印这篇文章
-
WML 锚和任务
连接是 HTML 页面里最基本的功能, 在 WML 里也一样用 < a href="url" title="label"> 和 < /a>来包括用来建立连接的文字,必选属性href指定了要打开的URL,可选的title属性给该连接取个标记名字,这个名字将作为软按钮之一的ACCEPT键(详见以前的HDML入门文章)的标记显示在屏幕的软按钮区,所以通常可以将属性作为提示文字是用。
然而,以上的连接在WML里只是任务的一种情况,为了能够使用其它任务,所以引进了新的标签< anchor title="label">任务标签 文本< /anchor>,< a>其实是当任务标签为< go/>时的简单表示方式。
test3.wml
---------------
< ?xml version="1.0"?>
< !DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
< wml>
< card>
< p>
< anchor title="Link1">< go href="test1.wml"/>News< /anchor>< br/>
< a title="Link2" href="test2.wml">Sports< /a>
< /p>
< /card>
< /wml>
WML里的任务标签有以下几种,除了用于< anchor>,还可以用在事件中:
1)< go>用来指示浏览器显示指定的URL,包括DECK的第一个CARD或者指定的CARD。语法如下:
< go href="url" sendreferer="false|true" method="get|post" accept-charset="charset">
< postfield name="name" value="value"/>
< setvar name="name" value="value"/>
< /go>
其中href属性为必选,其他为可选。sendreferer属性表示是否传递调用href所指定的URL的页面的URL,也就是当前页的URL,即 HTTP 头中的HTTP_REFERER,默认值为false,可选值为true。method和HTML中的表单FORM的method属性一样,指定表单是以get的方式还是post的方式递交,以便cgi处理,默认的值为get,但如果未指定method但< go>< /go>间存在< postfield>,手机自动以post方式传递。accept-charset 属性可覆盖在HTTP头里指定的字符集,可以写多个字符集,如accept-charset="UTF-8,US-ASCII, ISO-8859-1"。
< postfield name="name" value="value"/>可以看作是HTML表单FORM中的< INPUT TYPE="HIDDEN" NAME="变量名" VALUE="值">,通过它可以向指定的URL传递以“变量名/值”形式的数据。name和value属性都是必选的。注意只有这里的变量是用来递交给CGI程序的。
除了< postfield>,还可以在< go>和< /go>间加入一句或者多句< setvar name="name" value="value"/>,该语句的意思是,当触发某一事件时,给变量赋值。
要注意的是,当< go>和< /go>之间没有任何语句时,要用< go/>的形式,这点比较特别,比如< anchor title="Link1">< go href="test.wml"/>News< /anchor>。
2)< prev>用来将当前页面的URL压入URL历史堆栈,并打开此前的URL,若该URL不存在,则< prev>无效。语法类似< go>:< prev>< setvar name="name" value="value"/>< /prev>,< prev>和< /prev>之间可加入一句或多句< setvar name="name" value="value"/>,若不加,则必须变成< prev/>的形式。
3)< refresh>用来刷新当前的页面,从而使得页面内的变量刷新,语法为< refresh>< setvar name="name" value="value"/>< /refresh>。
4)< noop>,表示什么也不做,该标签不能用在< anchor>中,一般用在覆盖DECK级的< do>(以后会说明) - 打印这篇文章
- 与本文主题相关的文章
-
- 返回首页
