c# - 如何使用RedirectToAction重定向到页面中的某个位置?

标签 c# asp.net-mvc-4 redirect redirecttoaction

我在项目中使用 MVC4、C# 和 visual studio ultimate 2013。

我在提交表单后将用户重定向到索引页面。但是,此网页有 2 个选项卡,我想将用户重定向到第二个选项卡,而不是第一个选项卡。

我有一个名为 Material 的 Controller ,带有一个 Index 操作,它将用户发送到 Index View 。

public ActionResult Index()
{
   return View();
} 

此 View 由两个部分 View 组成,_Materials_Packages

@{
    ViewBag.Title = "Index";
}
<div class="tabbable">
    <ul class="nav nav-tabs">
        <li class="active"><a href="#Materials" data-toggle="tab">Materials</a></li>
        <li><a href="#Packages" data-toggle="tab">Packages</a></li>
    </ul>
    <div class="tab-content">
        <div class="tab-pane active" id="Materials">
            @Html.Action("Materials", "Material")
        </div>
        <div class="tab-pane" id="Packages">
            @Html.Action("Packages", "Package")
        </div>
    </div>
</div>

在应用程序的另一部分执行一系列操作后,我将用户重定向到 /Material 页面,到第二个选项卡,但我不知道该怎么做!

目前我正在使用这段代码,它总是重定向到第一个选项卡:

return RedirectToAction("Index", "Material");

我该如何解决我的问题?

最佳答案

您不能使用像 RedirectToAction 这样的东西,因为它没有任何附加 URL 片段的能力。你可以做的是使用像 Redirect 这样的东西,它只需要一个 URL 字符串,然后使用 URL 帮助程序仍然为你动态生成操作 URL:

return Redirect(Url.Action("Index", "Material") + "#Package");

换句话说,Url.Action 将为您生成主 URL 并将其作为字符串返回。然后,您可以在最终重定向之前将该片段附加到该字符串。

关于c# - 如何使用RedirectToAction重定向到页面中的某个位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26718722/

相关文章:

c# - IEnumerable 不为 null,但在迭代时抛出 NullReferenceException

c# - asp.net mvc 的动态服务

asp.net-mvc - 如何在 MVC 3 和 MVC 4 项目之间共享 web.config 文件

asp.net-mvc - 后期操作中的模型更改在 Html.TextBoxFor 中不可见?

asp.net-mvc-4 - 使用 dapper 将输出参数传递给接受数据表作为参数的 sp

javascript - 使用 JS 重定向但触发事件柜面选项卡关闭?

c# - StreamReader 因目录错误而失败?

c# - 数字之间带有符号的正则表达式

php - 登录后 Wordpress 重定向到引用页面

PHP 重定向暂停