2013-05-20 57 views
1

基本上我有3页。替换当前URL而不重定向

  1. 首页

  2. 尝试页

  3. 重定向页面

当用户点击尝试按钮,他被转发到重定向打开一个弹出窗口,他页使用,

window.open('Foo.jsp', 'mywindow', 'status=1,toolbar=0'); 

然后我重新将他重定向到原始窗口上的尝试页面。我用

window.location.replace("Attempt.jsp"); 

删除重定向页面历史记录。 但现在当用户点击浏览器的返回按钮时,Attempt.jsp再次打开。当他点击浏览器的BACK按钮时,我希望他导航到主页。我如何实现这一目标?

首页 - >尝试 - (现在的用户是这里)>未遂

现在,当用户点击浏览器的后退按钮时,他应该回去 - >重定向(打开弹出窗口,然后重定向到 尝试)到HOMEPAGE。 如果我可以在用户第一次到达时替换ATTEMPT PAGE的URL,那么也许我可以做到这一点。

+0

'history.pushState()' –

+0

你可以解释一下,因为我非常喜欢Java而不是Javascript。我已经阅读了关于pushState(),但无法正确理解它。多一点提示会很好。 –

回答

0

为什么用户必须首先通过尝试页才能到达重定向页面?

你可以简单地让主页上的按钮直接将它们带到重定向页面,当使用window.location.replace()时,将从历史记录中删除重定向页面,并使尝试页面上的后退按钮将它们带回首页?

+0

The Attempt Page向用户显示他将要尝试的内容,重定向页面用于打开弹出窗口并在重定向上执行一些与JSP相关的操作。 –

+0

你如何转发用户尝试重定向?你可以尝试从window.location.replace重定向。 – Tim

+0

我目前通过Servlet重定向用户。 编辑:该按钮是一个提交按钮,其操作是一个Servlet。然后Servlet使用response.sendRedirect(“Redirect.jsp”)重定向; –