windows 下encodeURI解析后第一次是乱码,以后正常显示中文。注:js中
答案:2 悬赏:60
解决时间 2021-02-17 15:42
- 提问者网友:嘚啵嘚啵
- 2021-02-17 09:34
windows 下encodeURI解析后第一次是乱码,以后正常显示中文。注:js中
最佳答案
- 二级知识专家网友:三千妖杀
- 2021-02-17 10:16
呵呵,之前刚好遇上这样的情况,下面告诉你我的解决办法吧。
1、传递到后台的数据,需要经过两次的encodeURI
2、URL.decode(String str)
这样就能够解决问题了。
例如:
var str="hello中文";
str=encodeURI(str);
str=encodeURI(str);
然后把str当做参数传递到后台(加入param的name为str)
之后
String str=URL.decode(request.getParamer("str"));
这样后台得到的str就不会乱码了,无论你是用什么浏览器
追问:直接报错
jsp中<%
String str=URL.decode(request.getParamer("str"));
%>
追答:不好意思,是
java.net.URLDecoder.decoder(String str)方法
追问:这个方法试过,不行。另外,childName是从数据库获得的,从页面获取的没有乱码现象!
1、传递到后台的数据,需要经过两次的encodeURI
2、URL.decode(String str)
这样就能够解决问题了。
例如:
var str="hello中文";
str=encodeURI(str);
str=encodeURI(str);
然后把str当做参数传递到后台(加入param的name为str)
之后
String str=URL.decode(request.getParamer("str"));
这样后台得到的str就不会乱码了,无论你是用什么浏览器
追问:直接报错
jsp中<%
String str=URL.decode(request.getParamer("str"));
%>
追答:不好意思,是
java.net.URLDecoder.decoder(String str)方法
追问:这个方法试过,不行。另外,childName是从数据库获得的,从页面获取的没有乱码现象!
全部回答
- 1楼网友:青尢
- 2021-02-17 11:49
贴代码再说~~
追问:代码已附上
追答:
后台直接childName = request.getParameter("childName");
就行了,因为你前面已经有
request.setCharacterEncoding("utf-8");
了。
追问:这样用过,不好使
追问:代码已附上
追答:
后台直接childName = request.getParameter("childName");
就行了,因为你前面已经有
request.setCharacterEncoding("utf-8");
了。
追问:这样用过,不好使
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯