5. URL 傳遞中文解決方案
1. 設定 web.config 檔案。
<system.web>
......
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
......
</system.web>
2. 傳遞中文前將參數編碼,接收時解碼。
> 傳遞:
string Name = "中文參數";
Response.Redirect("B.aspx?Name=" + Server.UrlEncode(Name));
> 接收:
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
3. 若從 .html 檔向 .aspx 傳遞中文參數(非後台 Redirect 轉換),同樣要編碼/解碼。
> 傳遞:
<script language="JavaScript">
function GoUrl() {
var Name = "中文參數";
location.href = "B.aspx?Name=" + escape(Name);
}
</script>
<body onclick="GoUrl()">
> 接收:
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
一般設定 web.config 就夠了。但若用 JavaScript 呼叫 WebService 方法(向 WebService 傳中文參數),設定 web.config 似乎無效。