Nov 26

WML语法与介绍 阴

, 07/11/26 11:15 , 技术开发 » WAP , 评论(0) , 引用(0) , 阅读(5281) , Via 本站原创 | |

将上例<card>中的ordered的值改为“true”试试看,然后再在<p>和</p>内加入<fieldset title="field1">和</fieldset>试试看。(Nokia WAP Toolkit好像对这些变化视而不见……)

<select>类似于HTML表单中的<SELECT>。<select>和</select>间可包含<optgroup>和<option>标签,语法如下,所有属性都为可选:
<select title="label" multiple="false&#124;true" name="variable" default="default" iname="index_var" ivalue="default" tabindex="n">
 <optgroup title="label">选单内容</optgroup>
 <option title="label" value="value" onpick="url"> 事件或者文本 </option>
</select>
title属性,如以上<input>的title属性。
multiple属性,指定用户可否进行多项选择,默认值为false。
name属性,用来存储用户选择项的变量名,其值为<option>标签的value属性。若用户没有选择又没有用default属性指定默认值,则手机将改变量赋值为空字符串(""),对于多项选择,每个值用“;”分开。
default属性,可为name属性指定的变量赋成默认值。
iname属性,用来记录用户选择项的位置,相应的值从1开始。若没选,则该值为0。
ivalue属性,用来记录默认值所在的位置。
<optgroup>可用来将多个<option>分组,<optgroup>和</optgroup>间还可包括<optgroup>和<option>,该标签目前尚未被支持。
<option>,类似于HTML中选单的<option>,用来表示选单的可选项。<option>和</option>间可包括事件和选单的显示文本。<option>的属性为可选,其中value属性用来提供值。当选到该项后,将该值赋给<select>的name属性所指定的变量。onpick属性,用来指定用户选到该项并按ACCEPT键后所打开页面的URL。
为了说明选择项的工作方式,请看下面的例子:

Array
WML的事件基本上分为两大类,一类是键盘(包括软硬按钮)输入事件,用<do>标签来处理。另一类是相关页面内部的事件,用<onevent>标签来处理。
<do>的语法如下:
<do type="type" label="label" name="name" optional="false&#124;true">任务</do>
任务就是以前提到的四种任务。<do>的属性中,type是必选的,其他为可选。
label属性,指定了软按钮在屏幕上的显示文本。目前type属性为delete、help、prev时该属性无效。
name属性,为<do>取个名字。同一的卡片里的<do>不能重名。如果卡片级的<do>和页面级的<do>同名,则覆盖页面级的<do>。
optional属性,指定手机是不是可以忽略这个事件,默认值是false。
type属性,指定触发的事件,具体如表3-5所示:

表 3-5 type的枚举值
枚举值            触发原因
accept            调用ACCEPT按钮机制
delete            调用DELETE按钮机制
help             调用HELP按钮机制
options           调用选择按钮机制
prev             调用PREV按钮机制
reset             调用清除和重新设定手机状态时的RESET机制(目前不支持)
unknown          调用unknown机制。等价于type=""(目前不支持)
Vnd. co-type        调用厂商特定的机制(目前不支持)
X-*, x-*           供以后使用(不保留)(目前不支持)

为了演示事件的触发过程,请看下面的例子:

Array使用Nokia WAP Toolkit对该程序进行测试。启动Nokia WAP Toolkit,并选择“Go”下的“Open Location”。在输入URL地址后,可以看到模拟器上出现的界面。在选择“Optionos”后出现了事件选择项。注意到“InputName”是do标签名字。在选择了“InputName”事件后,模拟器上将出现界面输出姓名

<onevent>的语法如下:
<onevent type="type">任务</onevent>
必选属性type的取值如表3-6所示:

表 3-6 type属性的取值
枚举值            如果用户执行了以下操作就执行任务
onpick             用户选择或不选一个<option>项时
onenterforward     用户使用<go>任务到达一个卡片时
onenterbackward  用户使用<prev>任务返回到前面的卡片时,或者按BACK按钮时
ontimer            当<timer>过期时

请看下面的例子程序:


Array 

<timer/>可以用作在用户不进行任何操作的一段时间后,自动执行一个任务,任何激活卡片页面的任务和用户操作都会启动<timer/>,而任务进行时,<timer/>就停止。每个卡片只能有一个<timer/>,一个<timer/>只能触发一个任务。语法如下:
<timer name="variable" value="value"/>
 其中name为可选属性,指定为一个变量名。当退出该卡片时,该变量存储此时定时器的值。当定时器超时时,手机将该变量设为0;value为必选属性,用来设置定时器的定时值,最小单位为0.1秒。
请研究下面的例子程序:

Array

再提一下:<onevent>、<timer>、<do>三者必须按以上顺序写。

此外在页面级还可以加入<template>,用来将事件捆绑在页面级上,语法如下:
<template onenterforward="url" onenterbackward="url" ontimer="url">
<do>或者<onevent>
</template>
请研究下面的例子程序:

Array
内文分页: [1] [2] [3]

作者:@Everyday NetLog
地址:http://blog.zhoz.com/read.php?93
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!

Tags:
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]