我在网上看了一篇文章《巧用escape解决ASP.NET中URL传参乱码问题》
URL: http://www.webjx.com/aspnet/2007-12-10/1927.html
- <script language="javascript">
- function winopen(url,width,height)
- {
- var newurl,arrurl;
- if(typeof(url) == "undefined" || url == "")
- {
- return ;
- }
- if(url.indexOf("?") == -1)
- {
- newurl = url;
- }
- else
- {
- newurl = url.substring(0,url.indexOf("?")+1);
- arrurl = url.substring(url.indexOf("?")+1).split("&");
- for(var i =0;i<arrurl.length;i++)
- {
- newurl += arrurl[i].split("=")[0] + "=" + escape(arrurl[i].split("=")[1]) + "&";
- }
- newurl = newurl.substring(0,newurl.length-1);
- }
- if(typeof(width) != "number" || typeof(height) != "number")
- {
- window.open(newurl);
- }
- else
- {
- window.open(newurl,"","width=" + width + ",height=" + height);
- }
- }
- </script>
我按照他的代码在C#中试了很多次,怎么就没有办法重现他所说的问题,即乱码。不过我觉得这段JavaScript脚本还是很有用的,所以把它记录在这里,以后需要的话,可以很好的找到使用。