日期:2014-05-18  浏览次数:20578 次

地址栏中文传参,比较简单的问题(在线等)
ASP.NET2.0
在HTML页面   href= "aa.aspx?x=中文 "         这个不用说了,到了aa.aspx肯定取不出
换成   href= "aa.aspx?x=%BA%D3%B1%B1 "   我把中文字符进行编号后到了aa.aspx页面还是取不出值,得到的永远都是     ɹ
换成href= "aa.aspx?x= "+encodeURI( '中文 ')   这回连个ɹ都没有了,x=空


请指点

------解决方案--------------------
Server.UrlEncode( "中文 ")
Server.UrlDecode( " ");
------解决方案--------------------
先清空缓存!中文不好传!最好是传英文或是数字。
------解决方案--------------------
HttpUtility.UrlEncode(str)
HttpUtility.UrlDecode(str)
------解决方案--------------------
尽量不要用中文传参数

就像不主张写class 中文类名 一样
------解决方案--------------------
支持wangdetian168(闪灵)
Server.UrlEncode( "中文 ") 传之前编码 Server.UrlDecode( " "); 取值时解码

------解决方案--------------------
写作cs文件中啊
我没有在html中写过
------解决方案--------------------
string a;
a = "中文 ";
a = HttpUtility.UrlEncode(a);
Response.Write(a);
------解决方案--------------------
晕,这么简单的问题难道都非要后台来解决??

可以写成href= "a.aspx?x= " + escape( '中文参数 ')

这样肯定可以的,后台代码不用做什么特殊处理就像平时那样取就可以了
------解决方案--------------------
href= "postinfo.aspx?F=1&V= "+ <%= HttpUtility.UrlEncode( "黑龙江 "); %> //少了一个=号
 


------解决方案--------------------
我日,问题解决了,也不开一下腔