2012-06-22 104 views

回答

1

在會話中打開並關閉標籤時,您可以隨時存儲。然後,當頁面再次訪問時,您可以檢查每個標籤是否被列爲在會話中打開並且是否重新打開它。

編輯

它很難給你完整的代碼片段完全回答你的問題,因爲我沒有得到你的代碼庫的訪問。但它會是這樣的。

<ul id="tabs"> 
    <li onclick="$.get("SaveTab.ashx?tab=1");">Tab 1</li> 
    <li onclick="$.get("SaveTab.ashx?tab=2");">Tab 2</li> 
</ul> 

然後在SaveSession處理機

<%@ WebHandler Language="C#" Class="SaveTab" %> 

using System; 
using System.Web; 

public class SaveTab: IHttpHandler, System.Web.SessionState.IRequiresSessionState 
{ 

    public void ProcessRequest (HttpContext context) { 
     context.Response.ContentType = "text/plain"; 
     if (HttpContext.Current.Request.QueryString["tab"] != null) 
     { 
      HttpContext.Current.Session["OpenTab"] =   HttpContext.Current.Request.QueryString["tab"]; 
     } 
} 

    public bool IsReusable { 
     get { 
      return false; 
     } 
    } 
} 

然後在ASPX輸出一些JavaScript,其選擇的選項卡。請注意,我正在輸出會話值。

$(document).ready(function() { 
    $('#tabs').tabs('select', <%= SESSION["OpenTab"]%>); 
}); 

我希望這是足以讓你得到的總體思路,我不能明顯地告訴你該怎麼做只是告訴你一個好辦法。

+0

你能幫我用代碼嗎? – user1474082