首页 新闻 会员 周边 捐助

a标签传值乱码问题

0
[待解决问题]

我在同一个jsp页面传值到struts,用form表单传中文是正常的,但是用a标签传中文就是乱码,这是什么问题,请问该怎么解决?

干杯朵儿的主页 干杯朵儿 | 菜鸟二级 | 园豆:201
提问于:2015-05-23 23:07
< >
分享
所有回答(2)
0

需要进行url编码

呆萌工科男 | 园豆:214 (菜鸟二级) | 2015-05-24 13:48

<a href="parameAction.action?f_name=<s:property value="fuliao"/>"><s:property value="fuliao"/></a> 我的标签里面的值是这个,要怎么编码呢?

支持(0) 反对(0) 干杯朵儿 | 园豆:201 (菜鸟二级) | 2015-05-24 14:41

@干杯朵儿: 三个方法:①使用Struts标签,<s:a >,它的的拦截器会帮你转;②你向值栈里添加fuliao前先对变量值进行URLEncode;③用js来进行url编码

支持(0) 反对(0) 呆萌工科男 | 园豆:214 (菜鸟二级) | 2015-05-24 14:45

@呆萌工科男: 为什么用了<s:a >不管用,然后因为fuliao是struts标签截取字符串得来的,也不好用URLEncode编码:

<s:set name="str" value="f_name"/>
<s:generator separator="," val="str" id="iter1"></s:generator>
<tr align="left">
<s:iterator status="st" value="#request.iter1" id="fuliao">
<td align="left"><s:a href="parameAction.action?f_name=<s:property value="fuliao"/>"><s:property value="fuliao"/></s:a></td>
</s:iterator>
</tr>

支持(0) 反对(0) 干杯朵儿 | 园豆:201 (菜鸟二级) | 2015-05-24 15:49

@干杯朵儿: 那你在后台获取的时候解码不就好了,传输过程中一定是ISO8859_1的编码,你改成自己项目的编码就好了

支持(0) 反对(0) 呆萌工科男 | 园豆:214 (菜鸟二级) | 2015-05-25 08:48
0

你在后台把参数处理下放到页面上,这样不容易乱码。

祁临芯 | 园豆:251 (菜鸟二级) | 2015-05-24 16:30

<s:property value="fuliao"/>这个值显示在页面上是正常的,只是在a标签里传到action里面就是乱码了,如果我在后台就把参数处理了,那在页面上显示的东西就不好了

支持(0) 反对(0) 干杯朵儿 | 园豆:201 (菜鸟二级) | 2015-05-24 16:38

@干杯朵儿: 传到action的值可以另外传递的,不一定显示的什么就传什么,你可以加密之后,隐藏在页面上,然后传到action中,在action中解密就好了

支持(0) 反对(0) 祁临芯 | 园豆:251 (菜鸟二级) | 2015-05-24 16:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册