【问题标题】:Refreshing page with window.location.reload() in chrome is causing issue [duplicate]在chrome中使用window.location.reload()刷新页面导致问题[重复]
【发布时间】:2014-07-02 20:21:46
【问题描述】:

在 Chrome 中,每当我尝试通过单击按钮刷新页面时,我都会丢失该页面上所有发布的数据。

例如

我从第 1 页导航到第 2 页,并将一些数据从第 1 页传递到第 2 页。现在,当我使用以下任何代码行刷新第 2 页时:

history.go(0);

window.location.reload();

window.location = window.location.href

刷新第 2 页后,我丢失了从第 1 页获取的所有数据。

这只发生在 chrome 中。在 Firefox 和 IE 8 中刷新第 2 页后,它仍然有我从第 1 页传输的数据。

谁能指导我如何在不丢失数据的情况下刷新页面。谢谢

【问题讨论】:

  • l打开页面时如何填写表单数据?你有一个onload 函数从cookies 或localStorage 中获取信息吗?如果是,请出示您的代码。
  • 默认情况下,某些浏览器可能会将表单的最后状态保留为首选项或功能。最后,您可能会看到这个,因为您自己的 chrome 设置被设置为不这样做。您应该将它们存储在 cookie 或本地存储中,正如 barmar 所暗示的那样。这样您就可以保证任何浏览器的结果都相同(想想 chrome 的表单自动填充以及它如何强制字段为黄色)

标签: javascript internet-explorer google-chrome firefox


【解决方案1】:

是否需要使用 POST 数据来加载第 2 页?尝试使用 URL 参数来保持页面的状态。

index.html?var1=bla

【讨论】:

  • 他仍然需要将第一个表单存储在本地存储或 cookie 中,或者将 get vars 传递回第一页
猜你喜欢
  • 1970-01-01
  • 2020-10-08
  • 2013-02-15
  • 2019-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-30
  • 2020-06-01
相关资源
最近更新 更多