2016-02-01 22 views
0

我正在开发一个ASP.NET MVC Web应用程序。@ Html.ActionLink的片段部分重载方法链接到标签页的一部分

在我的网页我有标签,看起来像这样的信息:

Tabbed Content

我的ActionLink的是这样的:

@Html.ActionLink("Back to Details", "RecordView", "ApplicantRecords", null, null, "Documents", new { id = Model.InternID }, null)

现在,当我将鼠标悬停在链接在我的应用程序中它具有InternID和片段的正确语法,但是当我点击它时,它会将我发送到标有“申请人资料”的标签,而不是“文件”。

当我将鼠标悬停在“文档”选项卡上时,它具有与将我的动作链接悬停在我的应用程序中时相同的网址。

有没有办法解决这个问题?

+0

是'RecordView'动作方法用于显示所有三个选项卡?你在哪里有链接“回到细节”? – Shyju

+0

记录视图确实是我在ApplicationantRecords控制器上重定向的操作。 –

+0

你还没回答我的问题。你的“回到细节”链接在哪里?哪个网页(Action)拥有你所有的3个标签? – Shyju

回答

1

除了Chris Patt的回答。

您需要明确启用所需的特定选项卡。

首先,您需要在您的url querystring中传递一个参数来表示要选择哪个选项卡。

@Html.ActionLink("Back to Details", "RecordView", "ApplicantRecords", 
             new { id = Model.InternID ,tab="documents" }, null) 

,并在您RecordView()操作方法,你会接受这一点,将其设置为ViewBag,让您可以在您的Razor视图阅读。

public ActionResult RecordView(int id,string tab="profile") 
{ 
    ViewBag.CurrentTab = tab; 
    return View(); 
} 

,并在您看来,在文档ready事件中,我们将看到它的值,并用它来显示特定标签。

$(function() { 

    var tab = "@ViewBag.CurrentTab"; 
    $('.nav-tabs a[href=#'+tab+']').tab('show'); 

}); 

假设你的标签链接的href值"#profile""#documents"

<ul class="nav nav-tabs" role="tablist"> 
    <li role="presentation" class="active"> 
     <a href="#profile" aria-controls="Profile" role="tab" data-toggle="tab">Profile</a> 
    </li> 
    <li role="presentation"> 
     <a href="#documents" aria-controls="documents" role="tab" data-toggle="tab">Docs</a> 
    </li> 
</ul> 
+0

所以这里是我的动作链接:'@Html。ActionLink(“返回到详细信息”,“RecordView”,“ApplicantRecords”,新{id = Model.InternID,tab =“Documents”},null)'...我的行动现在是公共ActionResult RecordView(int?id,串片= “详细信息”) { ViewBag.CurrentTab =标签;'...在我看来,我已经加入

+0

由于某种原因,我的换行符不能正常工作..对于拥塞感到抱歉...但是我的标签链接的href值是:

' –

+0

还我似乎无法让我的代码,代码块..只有单联线工作 –

1

只需将该片段追加到URL中就不会执行任何操作来激活特定的选项卡。 JavaScript“标签”库只是利用片段进行优雅的降级:如果JavaScript未启用,则由于页面定位器的工作方式,单击“选项卡”将跳转到标签内容所在页面的右侧部分。但是,您有责任检查URL中的片段(如果存在),并激活相应的选项卡。如何激活标签取决于您的具体解决方案,但您尚未向我们提供任何有关信息。

+0

的“编辑”视图的cshtml中,因此当我单击“返回到详细信息”链接..它需要激活“文档”选项卡。你需要看到什么可以帮助我激活选项卡? –

+0

感谢你和@Shyju我能够得到这个工作。感谢您的建议 –