首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • AJAX Prototype.js 传递中文参数的问题 [已结贴,结贴人:super_caibird]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • super_caibird
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 揭贴率:
    发表于:2008-08-21 17:32:21 楼主
    我是用asp程序接收传递过来的参数的,但是中文参数总是乱码,请问有什么解决的办法吗?
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zwd2005
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 17:58:571楼 得分:0
    编码一定要是UTF8
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xumv_com
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 18:54:452楼 得分:0
    例子
    xmlHttp.open("POST","?id="+escape("中文"),true);
    escape()函数
    ASP页前面加
    <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
    <%Session.CodePage=936
    Response.Charset="GB2312"%>
    说明发出的是中文
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • calvin814e
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 21:06:033楼 得分:0
    在接收页面加
    <%
    response.Charset="GB2312"
    %>
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • super_caibird
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 07:32:024楼 得分:0
    楼上两位朋友的办法好像不好用,我试了。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lcm612
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 09:29:165楼 得分:10
    我当时也被这个问题弄郁闷过,网上有各式各样的解答,我当时用的是jsp,和LZ有点区别,但我想应该一样的解决,首先就是保证欲传中文参数的那个页面编码为utf-8,然后在接受参数的那个页面使用request.setCharacterEncoding("UTF-8")(jsp的语法,不知asp是否是这样)来转换编码,这样就没问题了!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zwd2005
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 10:24:096楼 得分:0
    前台后台都用utf8编码
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kiki1985
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-25 11:57:377楼 得分:0
    我来告诉你,不是用的escape("中文")这个加密的,你接收时用decodeURIComponent()解密就可以了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zwd2005
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-25 22:05:518楼 得分:0
    把escape换成encodeURIComponent看看
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • caochong1981
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-23 23:14:489楼 得分:10
    使用prototype框架,做了修改

        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'
    });
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved