注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

庄庄的家

庄庄的家-网易博客

 
 
 

日志

 
 

WAP初级教程----WML变量  

2008-04-09 16:57:31|  分类: wap/wml |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

WML变量

格式 替换文本 ESCAPE转换

格式
象HTML一样WML可以定义变量,可以让你的页面设计更简单和富有逻辑性。变量格式如下显示:

$identifier
$(identifier)
$(identifier:conversion)

圆括号在变量带有空格时使用,第3种格式本节后面说明。
变量的优先权最高,所以当出现与变量符号相同的字符时,它将被认为是变量的标志。因此如果想在WML页面中显示$符号时必须在其后面再跟一个$符号。如下例:

You account has $$1650.00 in it.

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

创建变量
创建变量最简单的方法是使用<setvar>元素,语法如下:

<setvar
  name="string"
   value="string" />

<setvar>只能在<go>、<prev>和<refresh>中使用(具体操作见本教程任务(TASK))。下例定义了一个叫vNAME的变量并赋值为“Jeff”:

<setvar name="vNAME" value="Jeff" />

另外,还可以在<input>、<select>和<postfield>中定义变量,参考本教程(任务(TASK)和数据输入)

替换文本
变量可以用作替换用途,但只能在文本类型(如显示字符、URL等)中使用。任何元素和属性都不能使用变量来替代。例如:

Hello, $vNAME.

将显示:

Hello, Jeff.

ESCAPE转换
前面说过变量可以用作替换用途,但是在URL中使用时,变量的内容必须遵守[RFC2396]标准。这个标准规定某些特殊字符在URL里使用的时候必须用特殊表示方法,即ESCAPE八进制表示。例如:

list.asp?id=3

在URL中要表示为:

list.asp%3fid=3

所以变量有可能需要标志为是否对其内容进行ESCAPE转换,变量定义就有如下几种特殊方式:

效果 表达方式1 表达方式2 表达方式3
对变量中ESCAPE字符进行转换 $(var:e) $(var:E) $(var:escape)
不进行ESCAPE转换 $(var:u) $(var:U) $(var:unesc)
变量中没有ESCAPE字符 $(var:n) $(var:N) $(noesc)

给变量进行ESCAPE转换是WML的默认方式,特殊字符ESCAPE码请参考本教程字符实体。

  评论这张
 
阅读(270)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017