这个问题一直困扰了我们很久,今天找到了个解决方案,暂时先用着,以后再改善。方法如下:
html:
url:'..../***.do?parms1='+ encodeURI((encodeURI(param)));
为什么转两次?如果只有一个套那么转到action的结果类此这种编码:/䏿æµè¯3æä»¶å¤¹
java中解码:
传过来的参数如下形式:%C8%F8%C2%E5%B7%F2%BD%AB%BF%A8%CB%C0%C1%CB%B5%
然后通过decode()解码:
java.net.URLDecoder.decode(parms1,"UTF-8");
==============================================================
今天韩哥讲了另一个解决方案,比较好,不用encodeURI,不用解码:![]()
直接将参数写在data参数中:
例如:
$.ajax({
url: '${base}/pms/frame/resource/deleteFile.do',
type: 'post',
dataType: 'json',
data: {index:index, resourceId:$('#resourceId'+index).val(), resourceName:$('#resourceName'+index).val()}
});
用这种方式就不会出现传中文参数乱码的情况了。

本文探讨了在处理中文参数时遇到的乱码问题,并提供了两种解决方案:使用encodeURI()进行两次编码和直接将参数写入data参数中。通过实际案例对比,帮助开发者理解并解决此类常见问题。
521

被折叠的 条评论
为什么被折叠?



