设计了一个框架页
<frameset rows="85,*" cols="*" framespacing="0" frameborder="no" border="1" bordercolor="Black">
<frame src="Admin_welcome_top.aspx" name="top" scrolling="no" noresize>
<frame src="mainpage.htm" name="adminmain" scrolling="no" noresize>
</frameset>其中Admin_welcome_top.aspx页中有定向到name="adminmain"的链接
<asp:HyperLink id="HyperLink1" runat="server" ImageUrl="./fodder/sd.jpg" NavigateUrl="http://localhost/index.aspx" Target="adminmain">功能演示</asp:HyperLink>页面使用Session方法检测是否失效或非法,当失效或非法时,转向Logon.aspx页现在的问题是:
当session失效时,再点击Admin_welcome_top.aspx页中的“功能演示”链接,Logon.aspx页会显示在框架页的name="adminmain"中,框架上部还是Admin_welcome_top.aspx页的内容,这时再点击IE“刷新”,页面显示成为Logon.aspx页内容,没有再显示上部Admin_welcome_top.aspx页内容我想知道:
如何实现在session失效或非法时,再点击Admin_welcome_top.aspx页中的“功能演示”链接,直接转向Logon.aspx页,只显示Logon.aspx页内容,而不是上为框架页的Admin_welcome_top.aspx页内容,下为Logon.aspx页内容。请问有什么好的解决方法吗?
请帮忙UP

解决方案 »

  1.   

    给你一个函数,参数就是一个page 对象,是Session出错的那个Page/// <summary>
    /// 清除Session,重定向页面
    /// </summary>
    /// <param name="IPage"></param>
    public static void PageLogIn(Page IPage)
    {
    IPage.Session.Clear();
    string strscript =" <script language='JavaScript'> var objRoot; objRoot=window; while(true) {if(objRoot.parent==objRoot) {break;} objRoot=objRoot.parent; } objRoot.location.href =\"../Logon.aspx\"; </script>";
    IPage.RegisterStartupScript("Relogin", strscript);}他是将整个的页面的 Url转向为 Logon.aspx ,而不是框架的一部分~
    试试看吧
      

  2.   

    to njbaige(白鸽) /// <param name="IPage"></param>
    这个怎么设置,在那设置,是什么意思?