【问题标题】:I want my old data even I refresh the webpage即使我刷新网页,我也想要我的旧数据
【发布时间】:2015-02-18 09:22:27
【问题描述】:

第一个问题:

考虑一下,我正在填写任何表格然后我刷新那个页面,我想要的是我填写的那个页面不应该清除不仅刷新页面,即使在填写表格时出现网络问题。

第二个问题:

如果我使用任何用户名和密码登录,然后我会填写表格,如果在填写表格时出现网络问题,那么我会转到另一台机器并使用相同的用户名密码登录,我希望我在以前的系统中输入的任何内容都应该显示在这台机器。

对不起,我的英语不好,请告诉任何想法。

【问题讨论】:

  • 你应该使用cookie来满足这样的要求
  • cookies 存储在您的实际机器上,您无法从其他机器读取 cookie。
  • 您可以在您的输入上触发 onchange javascript 事件,将数据发送到您的服务器并将它们保存在数据库中,还可以让用户知道何时发生 ajax 错误,因此当无法输入数据时,他们会停止输入数据发送到服务器。

标签: java javascript angularjs jsp


【解决方案1】:

您应该尝试利用客户端存储。这将允许您将用户数据存储在本地浏览器上。这是一篇关于这个http://www.html5rocks.com/en/tutorials/offline/storage/的文章

希望对你有帮助

【讨论】:

  • 这就是我在评论中所说的使用 cookie
  • Bhargav Modi 先生,您告诉我本地机器没问题。请告诉我第二个问题的答案是什么。
【解决方案2】:

修复以下要求:

1 - 客户端的后台工作人员将数据发布到服务器。

  Worker;
  //or
  window.setInterval();

2 - 显示用户已连接或已断开连接的横幅或状态 div。

    var isOnline = window.navigator.onLine;

3 - 通知用户重新加载页面。

  window.addEventListener("beforeunload", function (e) { alert('Your leaving...') });

【讨论】:

    【解决方案3】:

    您的第一个问题有一个非常简单明了的解决方案:您希望使用 cookie 或 localStorage 之类的东西将数据保存在本地机器上。

    对于第二个问题,您需要一个更复杂的解决方案。基本上,您需要不断地将视图数据(输入值等)保存到服务器以“保管”,因为您假设机器可能在任何给定时刻崩溃。 所以你的后端应该支持保存“临时表单数据”,并且每当用户进入相关屏幕时,你需要在后端检查这些临时表单数据,并相应地填充表单。这可能会导致很多边缘情况,并且在 IMO 中不是微不足道的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-22
      • 2011-06-17
      • 1970-01-01
      • 1970-01-01
      • 2013-07-18
      • 2021-01-25
      • 1970-01-01
      相关资源
      最近更新 更多