prototype中文参数乱码解决方案

在使用portotype,调用ajax方法时出现乱码,此时,获取页面中加入

可以试试;; Page.Response.Charset = "gb2312";

如果不奏效,有人提供另外解决方案:

Code

 
另外还有一种方案;无论web.config中是否是"gb2312",都可以奏效。参考http://www.okajax.com/a/200904/prototype_utf8.html

方法如下;

1.将参数用encodeURI()编码

var par;  
par
="param1="+"中文值"+"&param2="+"其他值";  
var url="server.aspx";  
var myAjx=new Ajax.Request(url,{method: get',parameters: encodeURI(par) ,onComplete: submit});

 2.接受端代码

NameValueCollection nvc= HttpUtility.ParseQueryString(Request.Url.Query, Encoding.UTF8);  
string title = (nvc["param1"== null? "" : nvc["param1"];//接受中文

给出一个完整的调用示例,

Code
Code


非Ajax的可以参看这里

 http://www.cnblogs.com/downmoon/archive/2007/12/30/1021140.html

邀月注:本文版权由邀月和博客园共同所有,转载请注明出处。
助人等于自助!  3w@live.cn
原文地址:https://www.cnblogs.com/downmoon/p/1599199.html