【发布时间】:2019-08-19 12:05:44
【问题描述】:
我正在制作一个可供多人依次使用的 Kiosk 应用程序。他们需要输入一些个人信息,甚至可能是一张信用卡。一旦他们按下“提交”,它将处理信息并将它们重定向到确认页面。
但是,我需要以某种方式完全禁用后退按钮,这样下一个用户就无法返回并获取上一个客户的信息。
在我的控制器中,我使用的是 return RedirectToAction() 而不是 return View()。如果客户按下后退按钮,这有助于页面不会重新提交,但不会清除表单。 我还尝试了以下变体:
window.history.forward();
这根本不起作用。当我让控制器返回 View() 时,此 JavaScript 阻止用户返回,但会闪烁前一页,因此您可以在重定向回当前视图之前看到大约一秒钟的信息。
如果这是我必须走的路线,我完全禁用整个应用程序的后退按钮没有问题。我只是不知道如何。我不赞成禁用后退按钮的想法;如果有其他解决方案可以做到这一点,我也可以尝试这些解决方案。
编辑: 有人问过类似的问题,但没有一个能解决这个问题。具体来说,该问题讨论了在注销发生时禁用返回(清除会话/清除现金/等)。对于我的问题,我无法清除会话,因为它会将供应商注销,并且需求文档明确指出供应商的会话将激活 8 小时,除非注销。
【问题讨论】:
-
感谢您提供链接,但我在发布此内容之前确实检查了该页面,但似乎也没有任何效果。 :-/
标签: asp.net-mvc