OjM*_*OjM 6 asp.net-mvc razor asp.net-core
从我的客户端详细信息页面,我有一个按钮来编辑重定向到编辑页面的客户端记录.我在编辑页面上有一个"返回客户端详细信息"链接,我想将用户重定向回以前的客户端详细信息页面.
<a asp-controller="Client" asp-action="Detail" asp-route-id="@Model.ClientID">Return to client detail</a>
Run Code Online (Sandbox Code Playgroud)
目前,这可以按预期工作,但从头开始重新加载详细信息页面(即再次运行所有各种数据库查询)需要额外的时间.由于用户实际上只是在不更改客户端状态的情况下取消编辑,因此我希望将用户返回到上一个详细信息页面,而无需再次执行控制器操作.
基本上我想模拟浏览器后退按钮(以提高响应能力),但我不知道如何实现这个或者是否这样做是好的做法.一些指导意见将不胜感激.
谢谢
Dia*_*ani 14
因为IActionResult您可以使用此代码:
public IActionResult Test()
{
return Redirect(Request.Headers["Referer"].ToString());
}
Run Code Online (Sandbox Code Playgroud)
Bal*_*thu 10
您可以使用
<a href='javascript:history.go(-1)'>Return to client detail</a>
Run Code Online (Sandbox Code Playgroud)
或者点击
<a href="##" onClick="history.go(-1); return false;"> Return to client detail</a>
Run Code Online (Sandbox Code Playgroud)
你知道吗?我讨厌JS所以我会用后端方面写回答.HTTP referer是一个HTTP头字段,用于标识链接到所请求资源的网页的地址.所以,只需阅读并传递给视图(永远记住XSS和验证,用户可以轻松欺骗 HTTP请求)
在行动控制器
if(Request.Headers["Referer"] != null)
{
ViewData["Reffer"] = Request.Headers["Referer"].ToString();
}
Run Code Online (Sandbox Code Playgroud)
在视野中(剃刀)
@if(!string.IsNullOrWhiteSpace(ViewData["Reffer"]))
{
<a href="@ViewData["Reffer"]">Return to client detail</a>
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10832 次 |
| 最近记录: |