我有两个网页:index.php文件和handler.php index.php文件有一个形式,即提交给handler.php这样的:插入浏览器的历史记录条目
handler.php ?输入= +一些数据
我的目标是让浏览器的后退按钮需要我index.php?input=some+data
而不是简单地index.php
做一些事情。我怎样才能做到这一点?理想情况下,我宁愿使用PHP的,而不是JS把尽可能多的做尽可能
解决方案: 我补充提交处理程序,这是否:
function onFormUpdate()
{
window.history.replaceState({} , '', 'index.php?' + document.forms[0].serialize());
}
这种方式,形式将不会从提交index.php
,但是从index.php?input=some+data
。也就是说,后退按钮会让我回到index.php?input=some+data
。
我不认为修改历史是可能的。您可以考虑在提交表单之前使用网址的哈希(#)(例如)。 – Nicolas
等待,当您返回发送该数据的页面时,是否希望将数据发送到index.php? – Max
@Max是的,这正是我想要它做的。尝试返回到index.php时,应该将相同的数据发送到index.php。尼古拉斯:我不需要修改历史,我需要*制作历史。例如,我可以将表单提交给index.php,然后用相同的URL参数重定向到handler.php。这样,后退按钮会让我回到'index.php?input = some + data' ...这里的问题是,当我真正去index.php?input = some + data时,它会将我重定向到处理程序。 php?input = some + data – Pavel