A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© aynulily 中级黑马   /  2014-3-29 09:33  /  1408 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

问题是这样的: 注册页面, 每填一个信息 离开后要 验证是否与数据库中记录重复,ajax 会通过getElementById()来获得 用户在控件中所填的数据,并用其xmlhttprequest 对象的 send方法 传给 一般处理程序,一般处理程序 接受 用户所填的数据(问题就在这),本来xmlhttprequest.open()中的url 参数值是中英文,而 一般处理程序接受后,英文部分不变,中文部分成为方括号了。如图:

af2.JPG (137.18 KB, 下载次数: 11)

af2.JPG

af.JPG (179.25 KB, 下载次数: 14)

af.JPG

评分

参与人数 1技术分 +1 收起 理由
czwanglei + 1

查看全部评分

4 个回复

倒序浏览
写一个编码解码的函数在前台可以调用,解决中文参数乱码问题,你试试
1.编码
string state=Server.UrlEncode(stateName.Text.Trim());
Response.Redirect("aaa.aspx?state="+state+"");
2.解码(aaa.aspx)
string state= Server.UrlDecode(Request.QueryString["state"].ToString());
回复 使用道具 举报
<script type="text/javascript">
        function GoUrl()
        {
            var Name = "中文参数";
            location.href = "aaa.aspx?Name="+escape(Name) ;
        }
     </script>
这是前台调用时使用的函数
回复 使用道具 举报
接收时解码
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name)) ;
地址栏效果:http://localhost:3284/aaa.aspx?Name=%u4E2D%u6587%u53C2%u6570
显示效果:中文参数
回复 使用道具 举报
墨蹄 发表于 2014-3-29 11:45
写一个编码解码的函数在前台可以调用,解决中文参数乱码问题,你试试
1.编码
string state=Server.UrlEncod ...

为什么要编码,然后再解码,不是很啰嗦吗,不考虑安全性的话。 就我所查的是,传参页面和接参页面的编码不同所以要转成 两个页面都能识别的编码,那么为什么同一个网站开发的页面编码就不同了呢,不同又都是什么编码啊,如何改变他们所以的编码。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马