如何在 mvc 中自动重定向后删除特定的历史记录
Posted
技术标签:
【中文标题】如何在 mvc 中自动重定向后删除特定的历史记录【英文标题】:How to remove specfic history record after auto rediret in mvc 【发布时间】:2017-02-09 09:56:30 【问题描述】:我的问题是 当我从索引视图提交表单时,我选择了一些 记录并发送到控制器并继续下一个视图 这是我的代码
@using ReportViewerForMvc;
<script>
$(document).ready(function ()
window.setTimeout(function ()
window.location.href = "/FOO/Login/Home";
, 300000);
);
</script>
@
ViewBag.Title = "Report Viewer";
@html.ReportViewer(ViewBag.ReportViewer as Microsoft.Reporting.WebForms.ReportViewer)
在此视图中,应用条件后页面成功重定向到主页,但 当最终用户单击浏览器中的后退按钮时,它会显示与相同的报告 结果
按下后退按钮时如何处理上一条记录 或不将历史记录保存在浏览器 cookie 或缓存中
【问题讨论】:
也许可以禁用后退按钮。允许在您的站点中重新提交数据是一个潜在的危险问题。 我无法禁用浏览器后退按钮,它要求启用该按钮并且不再移动到以前的报告 您能否存储当前报告 ID/名称为会话。然后在controller处理请求的时候,查看要处理的report是否和is session一样。 @Wheels73 但用户可以从索引视图中看到报告,最终用户希望在您看到报告的情况下用户无法看到报告 阅读一下...我不知道你能达到你想要的。 ***.com/questions/21953384/… 【参考方案1】:您无法删除整个后退按钮历史记录。你所能做的就是用下一页替换最后一个条目,使用window.location.replace('url');
或者您可以使用以下方法禁用后退按钮:
<script type="text/javascript">
window.onload = window.history.forward(0);
</script>
【讨论】:
以上是关于如何在 mvc 中自动重定向后删除特定的历史记录的主要内容,如果未能解决你的问题,请参考以下文章
在asp.net mvc中注册成功(重定向到登录)后用户名自动填写登录页面
如果会话超时,如何在 MVC 中的 jquery ajax 调用后重定向到新页面?
记录历史命令,history,命令补全和别名通配符输入输出重定向