前台JS 和后台C#端传递中文
JavaScript encodeURI() 函数
定义和用法
encodeURI() 函数可把字符串作为 URI 进行编码。
1. js url = encodeURI(encodeURI(url)) c#后台string txtID = System.Web.HttpUtility.UrlDecode(request["TxtID"]);
这种方式得到的非常正确。
前台JS encodeURI(cYiYuanName)
后台C# cYiYuanName = System.Web.HttpUtility.UrlDecode(cYiYuanName, System.Text.Encoding.GetEncoding("utf-8"));
2.js url = "Table.aspx?TxtID="+escape(escape(str))
c#后台string txtID = System.Web.HttpUtility.UrlDecode(Request["TxtID"]);
这种方式得到的字符之间空格是规律乱码,我需要拆分空格的字符串,空格乱码刚好用到,我使用的是这种方式。
2、JS代码和C#代码
>> 进行传递
function GoUrl() {
var Name = "中文参数";
location.href = "B.aspx?Name="+escape(Name);
}
>> 进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
==========================================================================
后台C#端传递中文到另外一个页面
传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。
1、C#代码
>> 进行传递
string Name = "中文参数";
Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name));
>> 进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));