【问题标题】:Mozilla Firefox form values reset on history.backMozilla Firefox 表单值在 history.back 上重置
【发布时间】:2013-05-15 22:03:38
【问题描述】:

我正在编写一个 PHP 脚本。我有一个表单使用 post 方法和操作到另一个页面。如果发生错误,我会在该目标页面上显示一条消息,并让用户通过触发history.back(); javascript 函数的链接返回。 因此,用户单击该链接并返回到包含表单的页面,用户输入的值应保留在输入中。

他们留在 Chrome 上,但在 Firefox 中消失了。有没有办法使用历史记录在所有主要浏览器上保留 DOM 信息,或者唯一的方法是使用缓存,如会话、cookie 等?

【问题讨论】:

  • 您有修改表单的权限吗?如果是这样,您建议将表单提交到同一页面。如果出现错误,您可以打开带有预填输入和错误消息的相同表单。如果验证成功,则将用户重定向到下一页。
  • 为什么不在该页面上添加验证以避免错误?
  • 我已经以这种糟糕的方式在我的脚本中实现了各种页面。所以如果有更简单的解决方案,我不想改变所有这些页面上的表单提交态度。

标签: html forms firefox dom browser-history


【解决方案1】:

您可以,而且我知道这很烦人,捕获您的 POST 数据并将其转换为 SESSION 变量,然后重新填充浏览器上的输入字段。

或者,您可以将表单提交到 iframe 并处理,或使用 ajax 处理并根据结果触发新页面加载。

【讨论】:

    猜你喜欢
    • 2013-01-08
    • 2011-01-21
    • 1970-01-01
    • 2012-05-12
    • 1970-01-01
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    • 2016-11-26
    相关资源
    最近更新 更多