prototype中文参数乱码问题综合解决方法

因为网站编码是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="+"中文值"+"&param2="+"其他值";  

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>

 

你可能感兴趣的:(html,Web,Ajax,prototype)