问题1: 在用了frameset 框架里面的一个页面里面 有一个bouuton 想要点击后跳转到新的地址(跳出框架的那个默认地址)
        我是这样用   Response.Redirect("../MySite/UserRegister.aspx?uid=1") 并且后面还带有参数  但是 还是在框架里面跳转 这个页面还是跳转不出来 请问有什么好的建议?
问题2:在用了frameset 框架里面后的页面当你做了很多操作后 按一下F5刷新 又重新回到默认的第一页面,当然你在当页  面鼠标右键点击一下刷新是可以,我是想有什么好的办法 整个页面刷新 还是会指向刚才刷新的页面?谢谢啦

解决方案 »

  1.   

    问题一
     response.write("<Script>window.parent.location='../MySite/UserRegister.aspx?uid=1'</Script>")
    应该可以实现
    问题二不会
      

  2.   

      试下Response.Write("<script>if (top.location !== self.location) {top.location='../MySite/UserRegister.aspx?uid=1';}</script>");
      

  3.   

    请参考 http://www.w3school.com.cn/htmldom/prop_win_top.aspHTML DOM top 属性
    返回 HTML DOM Window 对象参考手册
    定义和用法
    top 属性返回最顶层的先辈窗口。该属性返回队一个顶级窗口的只读引用。如果窗口本身就是一个顶级窗口,top 属性存放对窗口自身的引用。如果窗口是一个框架,那么 top 属性引用包含框架的顶层窗口。语法
    window.top实例
    下面的例子窗口是否在一个框架中,如果是,则跳出框架:<html>
    <head>
    <script type="text/javascript">
    function breakout()
    {
    if (window.top!=window.self) 
    {
    window.top.location="tryjs_breakout.htm"
    }
    }
    </script>
    </head><body>
    <form>
    Click the button to break out of the frame:
    <input type="button" onclick="breakout()" value="Break out!">
    </form>
    </body></html>
      

  4.   

    这个你刷新下因为   
      <frame   src="haha.htm">这里对应的是这个页面啊,你刷新的时候是刷新的主页面,肯定是要到初始页面了。解决办法就是把这个全部弄掉,并且屏蔽F5。最好是弹出窗口就好了
    要不就进行判断
    每个菜单都用不同的ID,每次点击就存到cookie里面,   
      然后在判断,如果和cookie对应,就是显示的页面   
      

  5.   

    js:
    window.top.location="your page"
      

  6.   


    在onbeforeunload的时候把主框架的页面地址记录在cookie中,在onload的时候读取cookie中的内容,将主框架的地址设为最后访问的地址代码如下,注意,我的框架页是用的iframe// 在onbeforeunload的时候保存页面最后访问地址
    function fnSave()
    {
            // 将主框架的地址记录到cookie中,cookie在浏览器关闭即过期!
            document.cookie = "preSrc=" + escape(frmMain.location.href) + ";";
    }// 加载cookie中记录的地址
    function fnLoad(){
            var preSrc = null;
            
            // 从Cookie中找出记录
            var aCookie = document.cookie.split("; ");
            for (var i=0; i < aCookie.length; i++)
            {
                    var aCrumb = aCookie[i].split("=");
                    if ("preSrc" == aCrumb[0]) 
                            preSrc = unescape(aCrumb[1]); 
            }
            // 如果没找到,那么使用默认页
            if (preSrc == null)
                    preSrc = "Vender/HeadPage.aspx";        // 设置Iframe页的地址为刷新前最后访问地址
            document.all["frmMain"].src = preSrc;                                                
    }用这个吧,肯定搞定了
      

  7.   

                        Response.Redirect("../MySite/UserRegister.aspx?" + HttpUtility.UrlEncode("UserType=" + type.ToString() + "&UpId=" + Utility.Helper.GetValueFromCookies(this.Page, "Hotel.Manage.Admin", "TM.Id") + "&IsPass=1"));像这种后面的参数拼接 如何拼接呢? 我不会拼接
      

  8.   

    貌似IFrame浮动帧可以点刷新按钮时,只刷当前页面,不会回到起始页。
      

  9.   


     Response.Redirect("../MySite/UserRegister.aspx?UserType=" + HttpUtility.UrlEncode(type.ToString()) + "&UpId=" + Utility.Helper.GetValueFromCookies(this.Page, "Hotel.Manage.Admin", "TM.Id") + "&IsPass=1"); 看看我改的,OK不
      

  10.   


    上面的可以用的啦
    不是的 我说的是改成你用的那种response.write(" <Script>window.parent.location='../MySite/UserRegister.aspx'+后面怎么拼接 </Script>")
      

  11.   


    response.write("<Script>window.parent.location='../MySite/UserRegister.aspx?UserType='" +HttpUtility.UrlEncode(type.ToString())+"'&UpId='"+Utility.Helper.GetValueFromCookies(this.Page, "Hotel.Manage.Admin", "TM.Id")+"'&IsPass=1'</Script>");看看,可以不
      

  12.   


      response.write("<Script>window.parent.location='../MySite/UserRegister.aspx?UserType='" + Server.UrlEncode(type.ToString()) + "'&UpId='" + Utility.Helper.GetValueFromCookies(this.Page, "Hotel.Manage.Admin", "TM.Id") + "'&IsPass=1'</Script>");
                用Server.UrlEncode加密看看呢!
      

  13.   


     response.write("<Script>window.parent.location='../MySite/UserRegister.aspx?UserType='" + Server.UrlEncode(type.ToString()) + "'&UpId='" + Server.UrlEncode(Utility.Helper.GetValueFromCookies(this.Page, "Hotel.Manage.Admin", "TM.Id")) + "'&IsPass='" + Server.UrlEncode("1")+ "</Script>");
                
      

  14.   


    还是不行哦 为什么用response.write就不能加密妮?
      

  15.   


    string a = Server.UrlEncode("123123");
            string b = Server.UrlEncode("23423423");
            string c = Server.UrlEncode("1");
            Response.Write("<Script>window.parent.location='Default2.aspx?UserType='" +a+ "'&UpId='" +b+ "'&IsPass='" +c+ "</Script>");
            你用段点走一下,看看结果怎么样
      

  16.   

    window.top.location="xx.aspx"
    这个肯定行
      

  17.   

    用Session将变量存起来,再赋值给UserType传给弹出的页面,就不用编码了 试试看可以不?