asp.net默認的編碼是UTF-8html
js文件裏的編碼也是UTF-8
當你要在aspx頁面上進行傳中文參數時會出現亂碼
<-----request.aspx--接收參數頁----->
<----response.aspx--傳送參數頁----->web
例一:<a href="request.aspx?str=中國人"></a>express
解決辦法一:
1.能夠和改webconfig的編碼 如:
注意:你也要把request.aspx頁面上的編碼也改爲一樣的,雖然中文亂碼解決了,但若是你用到了js文件就會出現亂碼
//用這以上方法的話不會改變網站的其它頁面上的編碼
解決辦法二:
1.若是你不想動webconfig 你能夠在」response.aspx.cs「裏面對參數進行編碼 如:
response.aspx在頁面上:
<a href="request.aspx?str=<%=str%>"></a>
response.cs頁面上:
//這時str已是編碼後的asp.net
2.而在request.aspx.cs文件中也要進行轉換 如:
聲明一個變量
string str=gb2312["str"];
這裏的str就是你要接收的中文。ide
例二
若是你想在js裏面傳送中文參數 如:
request.aspx?str="+encodeURI("中國人");
這樣就不會出現亂碼了網站
例三
就是我在cshn上找到的一個方法我也沒試過,你們能夠試一下
protected
{string QueryString=Server.UrlDecode(System.Web.HttpUtility.UrlDecode(Request.ServerVariables[ "QUERY_STRING "],e));
System.Text.Regularexpression_rs.Regex
System.Text.Regularexpression_rs.Match
}
//以上這個不受編碼影響,只需知道原來傳入的編碼就可.
文章出處:http://www.diybl.com/course/4_webprogram/asp.net/asp_netxl/2008927/146349.html編碼