input属性
WML编程中可以使用变量,变量使用前必须进行定义。变量的命名原则及定义方法我们上一章已经讲过了,这里不再重述。在这里,我们主要介绍WML程序中设置变量的规定。
如前所述,setvar元素可用来设置变量,设置时setvar元素一般需要在go、prev或refresh元素中进行定义。另外,利用input和select元素也可以设置变量。其中前者是将用户输入的文本赋给变量,作为变量的值;而后者则将用户从option元素中选择的value属性的值赋给变量。有关input元素和select元素的语法格式及具体用法我们后面再行介绍。
设置变量时,以下几种情况还应当引起大家注意:
1)可以使用WMLScript的变量值设置WML的变量,反之亦然。也就是说,使用WML及WMLScript编写程序时,它们可以使用同名编程。
2)在WAP开发工具中,通常提供有对变量进行管理和维护的选项卡或对话框,开发人员从中也可以对相应的变量进行设置及编辑。
3)在当前上下文内容中,可以使用card元素的newcontext属性来消除所有的变量值。
用户输入处理元素
通过WAP手机的按键,用户可以向浏览器显示的卡片中输入数据信息或操作信息。WML为此专门提供了处理用户输入的元素。
input元素
input元素用于定义文本实体对象,包含有对输入文本内容的格式、数据类型、长度、值、变量名等多种属性的具体规定。当用户输入满足input元素的规定时,则接收输入信息,并赋给指定的变量灵活进行相应的操作、处理;否则,就通过浏览器给出具体的处理意见,并进行是单个输入处理或变量初始化操作,比如刷新卡片以让用户重新输入,或给用户指出输入错误所在并等待进一步的处理指令等。input元素是WML编程中处理用户交互活动的重要元素,它通过单独的标签进行定义,其语法格式如下:
其中除了name属性是必选的以外,其他属性都是可选的。这些属性的功能和用法介绍如下: 1)name。该属性用于指定用来保存用户输入文本的变量和名称。定义name属性后WML将根据该属性也即变量名,为即将输入的文本实体对象与之存储空间,以便接收用户输入。
2)title。该属性用于input元素的标签,通常是位于输入框前的提示信息。
3)type。用于指定文本输入区的类型,有text和password两种选择。默认值为text,指定的用户可以输入文本,而且输入的文本会同时逐渐响应并显示在浏览器中。如果选择password,则指定用户输入的文本作为密码文本处理,WML程序按文本实体接收输入的数据,而浏览器上响应用户输入显示时逐渐均为星号(*),由此起到保密的目的。
4)value。该属性用于指定name属性所定义变量的值,它将显示在输入框中。
5)default。该属性用于指定name属性所定义变量的默认值。
6)format。该属性用于格式化输入的数据。
7)maxlength。该属性用于指定用户可输入字符串的最大长度。该属性的上限为256,最多不能超过256个字符。
8)emptyok。用于指定用户是否可以不在输入框内输入内容。
9)size。该属性用于指定输入框的宽度,宽度值为字符个数。
10)tabindex。用于指定多个输入框存在时,类似于HTML中Tab键的具体位置。