hid*_*den 84 asp.net-mvc asp.net-mvc-3 asp.net-mvc-4
您好我想从Mvc Controller返回一个锚点
控制器名称= DefaultController;
public ActionResult MyAction(int id)
{
return RedirectToAction("Index", "region")
}
Run Code Online (Sandbox Code Playgroud)
这样,当指向索引时,url是
http://localhost/Default/#region
Run Code Online (Sandbox Code Playgroud)
以便
<a href=#region>the content should be focus here</a>
Run Code Online (Sandbox Code Playgroud)
我不是问你是否可以这样做:我如何在我的URL中添加锚标记?
gdo*_*ica 130
我发现了这种方式:
public ActionResult MyAction(int id)
{
return new RedirectResult(Url.Action("Index") + "#region");
}
Run Code Online (Sandbox Code Playgroud)
您也可以使用这种冗长的方式:
var url = UrlHelper.GenerateUrl(
null,
"Index",
"DefaultController",
null,
null,
"region",
null,
null,
Url.RequestContext,
false
);
return Redirect(url);
Run Code Online (Sandbox Code Playgroud)
http://msdn.microsoft.com/en-us/library/ee703653.aspx
Squ*_*all 14
伟大的答案gdoron.这是我使用的另一种方式(只是在这里添加到可用的解决方案).
return Redirect(String.Format("{0}#{1}", Url.RouteUrl(new { controller = "MyController", action = "Index" }), "anchor_hash");
Run Code Online (Sandbox Code Playgroud)
显然,有了gdoron的答案,在这个简单的案例中,这可以成为一个更清洁的人;
return new RedirectResult(Url.Action("Index") + "#anchor_hash");
Run Code Online (Sandbox Code Playgroud)
小智 13
dot net core中的一个简单方法
public IActionResult MyAction(int id)
{
return RedirectToAction("Index", "default", "region");
}
Run Code Online (Sandbox Code Playgroud)
以上产生/default/index#region。第三个参数是它在# 之后添加的片段。
小智 5
扩展 Squall 的答案:使用字符串插值可以使代码更清晰。它也适用于不同控制器上的操作。
return Redirect($"{Url.RouteUrl(new { controller = "MyController", action = "Index" })}#anchor");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22648 次 |
| 最近记录: |