jsp向action传值出现乱码

睡不醒的加菲 2014-04-19 10:42:14
代码如下:
<a href="findSaleSourceByConidtion!findByCondition?
currentPage=<s:property value="currentPage+1"/>&
indexCondition=${indexCondition}
&condition=${condition}">下一页</a>
第四行中的 condition参数是String类型的数据,传入到action中就变成了乱码 请问有什么的办法 在线等
...全文
181 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
北落师门_Orz 2014-05-15
  • 打赏
  • 举报
回复
你的问题 我刚好前天碰到了 你的传递方式是get方式传递,get方式会讲请求参数的名和值转换为字符串,并附加在URL之后,它的解决的方法比较麻烦: String rawQueryStr=request.getQueryString(); String queryStr=java.net.URLDecoder.decode(rawQueryStr,"gbk"); 你用这样的两行代码就可以得到 你要的参数了,但是它是一整条字符串 你的实例太麻烦了 我这里简化一下 <a href="hello.jsp?123&345&567".....></a> 那queryStr 就等于 123&345&567 所以建议再把他们按照 & 来分割成一个数组: String[] test=queryStr.split("&"); 那这样 test[0]=123 test[1]=345 test[2]=567 这样应该就解决了吧
yuhouqingchen_2648 2014-05-15
  • 打赏
  • 举报
回复
另外针对你给出的超链接格式是有错误的,正确的格式如下所示
a
		href="findSaleSourceByConidtion!findByCondition?
indexCondition=${indexCondition} &condition=${condition} ¤tPage=<s:property value= currentPage+1/>">下一页</a>
yuhouqingchen_2648 2014-05-15
  • 打赏
  • 举报
回复
引用 2 楼 dj1174232716 的回复:
JSP传值不是直接传给目标的,而是先放在request域中,在传给目标的,request域的默认编码是ISO8859,所以要指定request域的编码,同时还要指定JSP页面的编码,JSP页面的编码可以由pageEncoding="UTF-8"设置,request域可以response.setCharacterEnding(“UTF-8”);设置,在以request.setCharacterEnding("UTF-8")接受
简单实现来说这个是正解
草帽小子_DJ 2014-04-20
  • 打赏
  • 举报
回复
JSP传值不是直接传给目标的,而是先放在request域中,在传给目标的,request域的默认编码是ISO8859,所以要指定request域的编码,同时还要指定JSP页面的编码,JSP页面的编码可以由pageEncoding="UTF-8"设置,request域可以response.setCharacterEnding(“UTF-8”);设置,在以request.setCharacterEnding("UTF-8")接受
乔不思 2014-04-20
  • 打赏
  • 举报
回复
1.过滤器能解决 2.把页面的标签改为 struts的标签 3.手动校正乱码

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧