Ajax中文乱码

遇到了这样的问题:

 从jsp传值到struts2的action里面,可总是出现乱码,

刚开始我一直以为是我jsp页面和action类编码格式不同,才出现的乱码,可是我别的页面也是这样的就没问题,

经过分析原来是ajax的问题。这样小问题害死我了。

 

没经验,真可怕。

 

下面是我的解决办法:

 

js代码:

 

这是url传参乱码,客户端对url进行两次转码:(str可能是中文)

var url = 'policy.do?method=searchSuggest&schoolName=' + str+"&now="+new Date().getTime();
url = encodeURI(url);
url = encodeURI(url);

......

 

参数乱码encodeURI(参数名)

var url = "getSchool.html?ajax=true";
var params = {'schoolName':encodeURI(schoolName),'now':new Date()}

......

 

java代码:

 

String schoolName= request.getParameter("schoolName");
schoolName= java.net.URLDecoder.decode(schoolName,"UTF-8");

 

schoolName: 乱码参数;

utf-8:转码格式。

 

 

问题记下了,下次遇到这种问题应该可以很快解决了哦。。

 

加油!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值