jquery - MVC3 - 如何维护回发时的选项卡索引

标签 jquery asp.net-mvc asp.net-mvc-3 jquery-ui razor

我对 MVC 还很陌生。我有一个带有 jQ​​uery 选项卡的 View (如下所示)。

<div class="demo">
<div id="demoTabs">
    <ul aria-labelledby="demoTabsLabel">
        <li><a href="#basicInfo">Basic Information</a> </li>
        <li><a href="#address">Address</a> </li>
        <li><a href="#tabbs">Tab 3</a> </li>
    </ul>
    <div id="basicInfo">
        @using (Html.BeginForm("Create", "Organisation", FormMethod.Post)) {
        <div class="editor-label">
            @Html.LabelFor(model => @Model.Name)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => @Model.Name) @Html.ValidationMessageFor(model => @Model.Name)
        </div>
        <div>
            <a class="nexttab" href="#address">
                <input id="Submit2" type="submit" value="Continue" /></a>
        </div>
        }
    </div>
    <div id="address">
        @Html.Label("Address") <a class="nexttab" href="#tabbs">
            <input id="Submit4" type="submit" value="Continue" /></a>
    </div>
    <div id="tabbs">
        @Html.Label("optional") </fieldset>
        <input id="Submit5" type="submit" value="Submit" />
    </div>
</div>

当用户按下继续按钮时,控件将使用下面的脚本移动到下一个选项卡。

$("#demoTabs").tabs();
$(".nexttab").click(function () {
    $("#demoTabs").tabs("select", this.hash);
});

但是,当保存信息后请求从 Controller 返回时,它会重新加载页面并将控件再次移动到第一个选项卡。

你能建议我正确的做法吗?

非常感谢

Controller

[HttpPost]
public ActionResult Create(Xrm.Account account)
{
    //create
    org = orgModel.CreateOrUpdateOrg(account);
    return Redirect(Url.Action("Create", "Organisation") + "#tabbs");           
}

最佳答案

在您的 Controller 中,使用此行返回到您的 ActionResult。您需要在末尾附加正确的选项卡名称:

return Redirect(Url.Action("Action", "Controller") + "#tabname");

然后在您的页面中添加以下代码以在加载时显示右侧选项卡:

$("#demoTabs").tabs("select", window.location.hash);

关于jquery - MVC3 - 如何维护回发时的选项卡索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10144122/

相关文章:

jQuery 和 CSS 将绝对 div 设置到屏幕的中心(检测屏幕的分辨率)

php - 使用jquery将数据插入mysql是或否投票

javascript - jQuery如何使slideToggle对每个项目应用一个

c# - 使用 Autofac 创建具有依赖关系的类的实例

asp.net-mvc - 在 .NET Framework 4.0 中使用 TLS 1.2 的问题

javascript - 如何处理 jsonp 错误?

asp.net-mvc - 默认禁用 ASP.NET MVC 用户帐户

asp.net-mvc-3 - .NET MVC Server_GetLastError 总是返回缺少 View 错误

c# - 如何在 asp.net mvc 3 razor View 中访问应用程序变量?

c# - 设置可以在 ListBoxFor<> 中选择的最大项目数