我有个框架页面(index.aspx)分为上左右三个部分,右面的框架用来显示功能模块的界面。
<frameset rows="51,*" border="0"  framespacing="0" frameborder="No" id = "TTT" > 
  <frame src="MainTop.aspx" name="topFrame" id="topFrame" scrolling="No" frameborder="No" />
  <frameset  cols="180,*" border="0"   framespacing="2"  id = "MyFrame" onload="init();"> 
    <frame src="MainMenu.aspx" name="leftFrame" id="leftFrame" scrolling="Yes" />
    <frame src="Default.aspx" name="mainFrame" id="mainFrame"  /> 
  </frameset>
</frameset>当session timeout后自动回到登陆页面并且在登陆后要在右面的框架返回到session timeout前的页面。使用如下代码进行登陆后跳转
Response.Redirect("Index.aspx?fromurl="+TB_URL.Text.Trim(), false);在index.aspx里面用下面的代码接收fromurl的值并跳转:
function init()
    {
        var url = '<%=Request("fromurl")%>';
        alert(url);        if(url!="")
        {
            parent.frames['mainFrame'].location=url;
        }
    }
但是如果fromurl是下面这样的地址时fun1.aspx?id=2&name=3,变量URL获得的只是&前面的值,请问怎样才能获取全部的正确地址呢?

解决方案 »

  1.   

    Response.Redirect("Index.aspx?fromurl="+TB_URL.Text.Trim(), false); 
    这个字符串中没&何来之后 的值 ???
    如果是这样:
    fun1.aspx?id=2&name=3
    取3就是<%=Request("name")%>
      

  2.   

    你没有取后面的值,当然没有了
    <%=Request("name")%>
      

  3.   

    fun1.aspx?id=2&name=3是我举的一个例子。也就是当
    Response.Redirect("Index.aspx?fromurl=fun1.aspx?id=2&name=3", false); 时,
    用var url = ' <%=Request("fromurl")%>';得到的就是fun1.aspx?id=2而&后面的Name=3丢失了。各位大侠帮帮忙啊!
      

  4.   

    使用UrlEncode对fromurl=fun1.aspx?id=2&name=3进行编码然后用UrlDecode解码
      

  5.   

    <%= Request.ServerVariables("QUERY_STRING") %> 
      

  6.   

    呵呵,搞定!最后还是用了LtnRain的方法!