因为网站编码是gb2312。在使用prototype的ajax时遇到中文参数乱码的问题。
解决办法:
1.页面编码
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
2.将参数用encodeURI()编码
var par="param1="+"中文值"+"¶m2="+"其他值";
var url="/dutyAction.do?method=chineseChange";
var myAjx=new Ajax.Request(url,{method: 'get',parameters: encodeURI(par) ,onComplete: submit});
3.服务端代码
<filter> <filter-name>encodingFilter</filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter>
本文介绍了解决Prototype AJAX在处理中文参数时出现乱码的方法。主要包括设置页面编码为UTF-8,使用encodeURI对参数进行编码,以及配置服务器端过滤器确保请求参数正确解析。
4673

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



