当前位置: 代码迷 >> ASP.NET >> .net前台页面通过Server.UrlEncode传值,后台Server.UrlDecode取值,但是取到的还是乱码,哪位大侠帮忙解答一上
  详细解决方案

.net前台页面通过Server.UrlEncode传值,后台Server.UrlDecode取值,但是取到的还是乱码,哪位大侠帮忙解答一上

热度:6960   发布时间:2013-02-25 00:00:00.0
.net前台页面通过Server.UrlEncode传值,后台Server.UrlDecode取值,但是取到的还是乱码,哪位大侠帮忙解答一下
前台gridview里面:
C# code
<asp:TemplateField HeaderText="用户名">                              <ItemTemplate>                                                      <a  href="javascript:showdetail('<%# Server.UrlEncode( Eval("userName").ToString()) %>')">                                  <%#Eval("userName")%>    </a>                                                                </ItemTemplate>

js:
JScript code
function showdetail(userName) {            var s = new Object();            s.name = "aaa ";             var result = window.showModalDialog('userDetail.aspx?userName=' + userName, '', 'dialogWidth=835px;dialogHeight=400px;status=no');             if (result.type == " ")//传递回的type为空的时候才刷新页面。              {                 //alert("刷新 ");                 location.reload();             }          }


另一页面userDetail.aspx后台:
C# code
string userName00 = Request.QueryString["userName"].ToString(); //获取用户id                userName = Server.UrlDecode(userName00);                Label1.Text = userName;


但是在userDetail.aspx页面得到还是乱码。哪位帮忙看一下,是我加密的那里写错了吗?还是别的什么原因?

------解决方案--------------------------------------------------------
function showdetail(userName) {
var s = new Object();
s.name = "aaa ";

alert(userName);
var result = window.showModalDialog('userDetail.aspx?userName=' + encodeURI(userName), '', 'dialogWidth=835px;dialogHeight=400px;status=no');


if (result.type == " ")//传递回的type为空的时候才刷新页面。 
{
//alert("刷新 ");
location.reload();

}

------解决方案--------------------------------------------------------
另外不需要 Server.UrlEncode
------解决方案--------------------------------------------------------
我来个去,,,LZ你居然也姓季!!!表示我这是第一次在同行里面遇见同姓滴,求口口
  相关解决方案