prototype 中文参数乱码解决方案
来源:互联网 发布:网络硬盘录像机16价格 编辑:程序博客网 时间:2024/06/13 19:53
在使用portotype,调用ajax方法时出现乱码,此时,获取页面中加入
可以试试;; Page.Response.Charset = "gb2312";
如果不奏效,有人提供另外解决方案:
复制代码 代码如下:
request: function(url) {
this.url = url;
this.method = this.options.method;
this.encoding = this.options.encoding;
var params = this.options.parameters;
if(this.encoding.toUpperCase()=="UTF-8"){
encode=encodeURIComponent;
}else{
encode=escape;
}
在调用时,加上encoding: 'gb2312'
复制代码 代码如下:
var myAjax = new Ajax.Updater(
"dvContent",
url,
{
method: 'get',
parameters: pars,
encoding: 'gb2312'
});
另外还有一种方案;无论web.config中是否是"gb2312",都可以奏效。
因为网站编码是gb2312。在使用prototype的ajax时遇到中文参数乱码的问题。
方法如下;
1.将参数用encodeURI()编码
复制代码 代码如下:
var par;
par="param1="+"中文值"+"¶m2="+"其他值";
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"];//接受中文
给出一个完整的调用示例,
复制代码 代码如下:
/**//*
Ajax企业名称是否存在检查
*/
function CheckCompanyExist()
{
var objtxtName=arguments[0];
var objBtnSubmit=arguments[1];
var objBtnCheck=arguments[2];
var currC_ID=arguments[3];
//alert($(arguments[0]).value);
var objtxtValue=$(arguments[0]).value;
$(objBtnSubmit).disabled=true;
if($F(objtxtName).trim())
{
$(objtxtName).disabled=!$(objtxtName).disabled;
var url="/tempAjaxService/";
var pars="module=CompanyExist&C_ID="+currC_ID+"&name="+objtxtValue;//$F(objtxtName);//objtxtValue;//
var myAjax = new Ajax.Request(url, {method: 'get', parameters: encodeURI(pars),onComplete : function() {
var txt = (''+arguments[0].responseText).evalJSON();
if(txt.Results==0||txt.Results==currC_ID)
{
//alert(''+arguments[0].responseText);
$(objBtnSubmit).value="提交我的企业信息";
$(objBtnSubmit).disabled=false;
alert("企业验证通过,您可以继续下一步操作");
}
else
{
$(objBtnSubmit).value="请先确认您的企业信息是否已存在本网中";
if(window.confirm('此企业已存在,想获得该公司管理权限,点击“确定”,了解详情!!\r\n如果不能打开窗口,请检查并取消您所用浏览器的“弹出窗口拦截”功能。\r\n或在浏览器地栏中输入以下地址\r\nhttp://www.jb51.net/ZhengMing.aspx'))
window.open ('http://www.jb51.net/ZhengMing.aspx','newwindow','height=160,width=800,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');
}
$(objtxtName).disabled=!$(objtxtName).disabled;
}});
}
Code
复制代码 代码如下:
//Page.Response.Charset = "gb2312";
NameValueCollection nvc = System.Web.HttpUtility.ParseQueryString(Request.Url.Query, Encoding.UTF8);
Name=SQLParser.StringParse(nvc["name"]);
详细出处参考:http://www.csdn123.com/html/20130206/79/da39c5d9bf69bc3c841432ab2c8a983d.htm
- prototype中文参数乱码解决方案
- prototype中文参数乱码解决方案
- prototype 中文参数乱码解决方案
- prototype中文参数乱码问题
- Ajax中文参数乱码解决方案
- URL中文参数乱码解决方案
- java中文参数乱码解决方案
- prototype.js的使用: 中文参数出现乱码
- prototype.js的使用: 中文参数出现乱码
- JSP传URL中文参数乱码解决方案
- struts1参数传递中文乱码解决方案
- modelandview参数传递中文乱码解决方案
- js参数中文出现乱码的解决方案
- Spring MVC参数传递中文乱码解决方案
- asp.net接收URL中文参数的乱码解决方案
- jquery ajax传递中文参数乱码问题及解决方案
- URL传递中文参数中乱码问题的解决方案
- ASP.NET PAGER传递中文参数乱码解决方案
- uva11176 - Winning Streak(连续获胜)
- codeforces 312
- 字体大宝库:18款最新发布的免费英文艺术字体
- 转prototype.js中文说明
- SqlServer2008--建立触发器实例
- prototype 中文参数乱码解决方案
- 添加属性页
- Python yield 使用浅析
- The C++ Programing Language读书笔记之(1):Advise
- Downloaded Files for 11i and R12
- gralloc 学习
- 操作系统概论三
- 算法设计与分析--霍夫曼树编码(C++实现)
- TUXEDO错误解析