字符串编码不起作用 IE9

本文关键字:IE9 不起作用 编码 字符串 | 更新日期: 2023-09-27 18:33:49

我正在使用服务器端代码从用户那里获取所有参数,使用 name 参数如下,

string name = HttpContext.Current.Request.QueryString["name"];

我也必须用希伯来语传递名字。当我在chrome和Firefox中传递希伯来语时,一切都很好,但是,

在IE中,希伯来语序列是?????

有没有办法在服务器端解决这个问题?

提前感谢!

字符串编码不起作用 IE9

我认为你应该使用HttpUtility.ParseQueryString方法。

var qsParsed= HttpUtility.ParseQueryString("phone=05099999&name=%3f%3f%3f%3f%3f&carNo=555555");
var name= qsParsed["name"];

方法使用 UTF8 格式来分析查询字符串 在返回的 NameValueCollection 中,URL 编码的字符是 同一查询字符串参数的解码和多次出现 作为单个条目列出,每个值之间用逗号分隔。

经过大量研究,我想出了问题所在。

在客户端,我的ajax如下:

$.ajax({
            type: "GET",
            url: "/inc/Handlers/CarSale/CallMeHandler.ashx?phone="
                + data.prefix + data.phone + "&name=" + data.name +
                "&carNo=" + callme.siblings("input").val(),
            //data: data
        })

为了进行手动解析,我需要添加encodeURIComponent(data.name)...所以IE会做正确的解析。

提前感谢大家,你真是太棒了!