遇到了这样的问题:
从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:转码格式。
问题记下了,下次遇到这种问题应该可以很快解决了哦。。
加油!