WAP初级教程笔记---2

** WML 变量 ** ****


格式
定义变量:
| $identifier
$(identifier)
$(identifier:conversion)

变量的字符串级别最高,如果遇到相同的字符串,首先被认为是变量。显示$,需要后面在跟一个,$$。例如:
You account has $$1650.00 in it.

变量名称规则:
1、变量名是由US-ASCII码、下划线和数字组成;
2、只能以US-ASCII码开头;
3、变量名大小写敏感。
注意:
1、WML变量没有类型,均表示为字符串;
2、变量没有被赋值的时候,内容为空,即空字符串。
3、可以在运行过程中改变它的值。

创建变量
最简单的方法是使用

 1<setvar>元素,语法如下:   
 2<setvar name="string" value="string"></setvar>  
 3---  
 4  
 5<setvar>只能在<go>、<prev>和<refresh>中使用。   
 6下例定义了一个叫vNAME的变量并赋值为“Jeff”:   
 7<setvar name="vNAME" value="Jeff"></setvar>  
 8---  
 9  
10另外,还可以在<input/>、<select>和<postfield>中定义变量。   
11**   
12** 替换文本    
13变量可以用作替换用途,但只能在文本类型(如显示字符、URL等)中使用。   
14任何元素和属性都不能使用变量来替代。例如:   
15Hello, $vNAME.   
16---  
17将显示:    
18Hello, Jeff.   
19---  
20  
21ESCAPE  转换    
22前面说过变量可以用作替换用途,但是在URL中使用时,变量的内容必须遵守[RFC2396]标准。   
23这个标准规定某些特殊字符在URL里使用的时候必须用特殊表示方法,即ESCAPE八进制表示。   
24例如:    
25list.asp?id=3   
26---  
27  
28在URL中要表示为: 
29
30list.asp%3fid=3   
31---  
32  
33所以变量有可能需要标志为是否对其内容进行ESCAPE转换,变量定义就有如下几种特殊方式:   
34  
35**效果** |  **表达方式1** |  **表达方式2** |  **表达方式3**  
36---|---|---|---  
37对变量中ESCAPE字符进行转换  |  $(var:e)  |  $(var:E)  |  $(var:escape)   
38不进行ESCAPE转换  |  $(var:u)  |  $(var:U)  |  $(var:unesc)   
39变量中没有ESCAPE字符  |  $(var:n)  |  $(var:N)  | 
40
41$(noesc)   
42  
43  
44给变量进行ESCAPE转换是WML的默认方式。</postfield></select></refresh></prev></go></setvar></setvar>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus