在浏览器不知道的情况下重新加载页面

Reloading page without browser knowing

我目前正在构建一个网站,该网站使用 php 从 MySQL 获取数据,然后显示它。在其中一个页面上,我使用表单提交数据,然后重新加载页面以显示它。它工作得很好并且完全按照我想要的方式工作,唯一的问题是当用户按下浏览器后退按钮时,它会遍历所有以前提交的数据,而不是仅仅返回到它来自的页面。有没有办法在浏览器不存储页面的情况下重新加载页面,或者有没有办法让浏览器返回到上一页而不是历史记录。 注意:我知道 Ajax 以及如何使用它来完全不重新加载页面,但我想看看是否有一种方法可以在不重新设计我的整个页面的情况下用一个看似小的问题来做到这一点。

您可以在 HTML5 中使用 history.replaceState

另一种可能性似乎是

window.onpopstate = function(event) {
  window.history.go(-1);
};

虽然我自己没试过。

https://developer.mozilla.org/en-US/docs/Web/API/History_API and https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onpopstate