首页 > 解决方案 > 如果用户在特定的 Rails 视图上输入任何 URL,如何防止浏览器的后退按钮并保持同一页面?

问题描述

如果用户到达售票页面(book.html.erb)

案例 1:浏览器的后退按钮在这里不应该工作。用户将留在同一页书票上。

案例 2:如果用户在这种情况下多次单击浏览器的后退按钮,用户仍将停留在同一页书票上。

情况 3:如果用户在浏览器中输入了任何 URL,在这种情况下,用户仍然停留在同一页书票上。

请建议任何 Rails 功能来实现这一点或为此建议任何 JavaScript。

标签: javascriptruby-on-rails

解决方案


不能阻止用户离开您的页面,只有解决方法(如Tom Lord所说),事实上,它们都不会禁止用户执行此操作,只会帮助“更难”离开您的网站. 客户端没有足够的权限来强制浏览器以这种方式运行。

说,在 Rails 中,一种解决方法是before_action在您的ApplicationController, 和redirect_to您的票务页面上使用,如果某些变量/属性/状态表明这一点。

使用它,您将能够强制用户始终访问相同的 url,前提是他在您的域中。


推荐阅读