天天看點

頁面上通過位址欄傳值時出現亂碼的兩種解決方法

1.在web.config中<system.web>節點下添加一句配置:

<globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312" culture="zh-CN"/>

 節點屬性解釋:

requestEncoding:指定每一傳入請求的假定的編碼,包括已傳遞的資料和查詢字元串。如果請求附帶包含一個 Accept- Charset 屬性的請求标頭,它将重寫配置中的該屬性。預設編碼為 UTF-8

responseEncoding:可選的屬性。指定響應的内容編碼。預設編碼為 UTF-8;

fileEncoding:可選的屬性。為 .aspx、.asmx 和 .asax 檔案分析指定預設編碼。無論此屬性的值是什麼,用 byte order mark  字首儲存的 Unicode 和 UTF-8 檔案都将被自動識别。

Culture:可選的屬性。為處理傳入的 Web 請求指定預設的區域性。此屬性還可以設定為 auto。

2.針對兩種方法傳值

       String Name="中國"; 從A頁面傳到B頁面

       2.1,Javascript腳本傳值

 傳:Windows.location="A.aspx?name="+escape(Name)

 取:Request.QueryString["name"].ToString();

       2.2,Asp.Net頁面傳值

               傳:Response.Redirect("A.aspx?name="+Server.UrlEncode(name))

               取:Server.UrlDeCode(Request.QueryString["name"].ToString())