我正在我的网站上构建一个文本编辑器,工作流程如下。
- 在
/list
中,用户从列表中选择他们想要编辑的条目,该列表会将他们带到/edit/[article_id]
。 - 用户完成他们的工作,然后点击提交。
- 服务器处理该内容,并将它们重定向回
/edit/[article_id]
,它现在反射(reflect)了编辑后的工作。服务器还会在页面上激活一条闪现消息,指示编辑成功。
此时,用户可能想要返回到 /list
并单击浏览器的后退按钮。这将根据他们提交的次数反复将他们带回给编辑。
我试过在页面的某处放置一个后退按钮,但很多用户只是忽略了它。
我宁愿不通过 AJAX 提交,因为这也会影响 flash 消息系统。
我喜欢做的是在用户提交时替换历史列表中的最后一个条目,而不改变其长度。可能吗?
最佳答案
试试这个
window.location.replace(url);
在使用 replace()
之后,当前页面将不会保存在 session 历史记录中,这意味着用户将无法使用“后退”按钮导航到它。
关于javascript - 从浏览器历史记录中删除当前页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42918837/