Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 浏览器后退按钮上的URL处理_Javascript_Html_Browser - Fatal编程技术网

Javascript 浏览器后退按钮上的URL处理

Javascript 浏览器后退按钮上的URL处理,javascript,html,browser,Javascript,Html,Browser,我正在制作一个简单的web应用程序,在输入查询时打开url。我正在使用Python中的瓶子框架。我面临的问题如下: 我有两个URL处理程序,一个用于/,另一个用于/process。当用户通过/上的表单输入查询时,表单操作转到/process,然后处理查询并使用窗口打开特定url。打开(url,“\u self”)。现在,当用户点击浏览器中的后退按钮时,/process将使用相同的查询再次调用,然后再次加载相同的url。当按下后退按钮时,我希望它转到/,而不是这个。我该怎么做?谢谢 编辑:我以前没

我正在制作一个简单的web应用程序,在输入查询时打开url。我正在使用Python中的瓶子框架。我面临的问题如下:

我有两个URL处理程序,一个用于
/
,另一个用于
/process
。当用户通过
/
上的表单输入查询时,表单操作转到
/process
,然后处理查询并使用
窗口打开特定url。打开(url,“\u self”)
。现在,当用户点击浏览器中的后退按钮时,
/process
将使用相同的查询再次调用,然后再次加载相同的url。当按下后退按钮时,我希望它转到
/
,而不是这个。我该怎么做?谢谢


编辑:我以前没有注意到这一点,但在Firefox中发现了上述不希望出现的行为,但在Chrome中没有发现。

您可以使用window.history对象来操作和替换历史,或者,代替使用
window.open(url,“\u self”)
,替换位置

例如:

window.location.replace(url);
检查并回答这个问题

另一个解决方案是在用户返回时拦截。请勾选此答案,以获得一些示例:


不要使用
窗口重定向。打开
或任何类型的客户端JavaScript

使对
/process
请求的HTTP响应成为一个
302 Found
HTTP状态,并带有
位置


有关详细的维基百科链接,请参见。

+1。问题是否与浏览器有关?解决方案有效。请看我的问题。有什么线索可以解释为什么这个问题与浏览器有关吗?url是如何传递到
窗口的。open
是如何形成的?它实际上并没有形成。它是从搜索引擎返回的URL列表中选择出来的。