2

我正在构建一个 MVC 应用程序,在我看来,我使用引导选项卡。现在,我想要的是在刷新页面或从控制器重定向到它之后重新加载最后一个活动选项卡。关于如何以最简单的方式做到这一点的任何帮助?这是我的代码:

<div id="tabs">
    <ul class="nav nav-tabs">
        <li class="active">
            <a href="#Stages" data-toggle="tab">Stages</a>
        </li>
        <li>
            <a href="#Activities" data-toggle="tab">Activities</a>
        </li>
        <li>
            <a href="#History" data-toggle="tab">History</a>
        </li>       
    </ul>

    <div class="tab-content">
        <div class="tab-pane active" id="Stages">                
            @Html.Partial("_Stages", Model.stages)
        </div>
        <div class="tab-pane" id="Activities">
            @Html.Partial("_Activities", Model.activities)
        </div>
        <div class="tab-pane" id="History">
            @Html.Partial("_History", Model.history)
        </div>
    </div>
</div>
4

2 回答 2

1
  1. 尝试location.href.hash在客户端检查并相应地操作选项卡选择。

  2. 否则,您将不得不使用一些导航/历史客户端库,例如nav.jssammy.js. 这可以使用哈希路径在浏览器历史堆栈中注册选项卡点击。使用 URL 哈希,您可以操作选项卡选择

  3. 可以参考Sammy 实现

于 2013-04-24T12:04:23.153 回答
0

TwitterBootstrapMVC允许通过扩展方法传递活动选项卡编号:

using (var tabs = Html.Bootstrap().Begin(new Tabs("TabsId").ActiveTab(2)))
{
    @tabs.Tab("Tab 1")
    @tabs.Tab("Tab 2")
    @tabs.Tab("Tab 3")

    using (tabs.BeginPanel())
    {
        <p>Contents of tab 1</p>
    }
    using (tabs.BeginPanel())
    {
        <p>Contents of tab 2</p>
    }
    using (tabs.BeginPanel())
    {
        <p>Contents of tab 3</p>
    }
}

因此,如果您的模型中有关于您想要使用的选项卡的信息,您可以使用它。

于 2013-09-19T22:22:24.187 回答