1

我在父菜单中有 jquery 选项卡,我想在页面重定向后保留打开的选项卡。

HttpContext.Current.Response.Redirect("~/HRMS/PayrollHome.aspx", false);
4

1 回答 1

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"]%>);
});

我希望这足以让您了解总体思路,我不能清楚地告诉您确切的操作,只是向您展示一个好的方法。

于 2012-06-22T13:07:56.530 回答