在request中传递带运算符的表达式字符串

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

(技巧,摘抄)

例如在网页中有一个链接,

……/mytest.jsp?id=1&ptdm=a+b

当我提交以后,使用request.getParameter("ptdm")得到的值不是a+b,而是a

如何能得到a+b 呢?

很简单

/mytest.jsp?id=1&ptdm=a%2bb

用%2b代替+号就可以了

+在java中是连接字符串运算符,而在座参数传递时参数不能传递一个表达式。所以如果a+b是表达式,最好先计算结果然后再传。如果就是想传递表达式,可以将这个表达式赋给一个字符串变量,然后传递这个变量,比如String a=a+b 传递用:mytest.jsp?id=1&ptdm=<%=a%>

如果只是传+,应该用下面的字符串代替特殊字符。

特殊特殊字符的含义

————————————————————————————

字符 特殊字符的含义 URL编码

# 用来标志特定的文档位置 %23

% 对特殊字符进行编码 %25

& 分隔不同的变量值对 %26

+ 在变量值中表示空格 %2B

\ 表示目录路径 %2F

= 用来连接键和值 %3D

? 表示查询字符串的开始 %3F

如果+是连接的作用,那就用"mytest.jsp?id=1&ptdm="+a+b,然后传过去

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航