1

我目前正在制作一个网站,我需要一种简单的方法来在页面重新加载时保留表单数据。是否有可能做到这一点?我在想它可以用javascript来完成。无论如何,如果您对如何执行此操作有任何想法,请发表评论。谢谢!

4

2 回答 2

1

看看sisyphus.js,它将通过localStorage客户端存储表单数据并在提交/重置时清除它。直接来自文档的简单示例:

$('form').sisyphus();

仅作记录,还有其他可用的库/解决方案

于 2012-05-05T02:56:47.660 回答
1

如果这不必是客户端,为什么不偶尔将表单发送到服务器以供以后检索。类似于使用 jQuery 的 serialize() 发送 ajax 帖子(参见http://api.jquery.com/serialize/)。在服务器上,您可以将其保留在内存(会话状态)中,或者如果需要长时间保存到数据库中。

更好的解决方案可能是捕获 window.onbeforeunload 事件,将表单数据 ajax 到服务器,然后在重新加载从服务器重新检索表单时使用发布的数据。

但是,您可能需要注意,因为我注意到一些浏览器已经尝试这样做。据我回忆,FireFox 实际上会尝试保持表单状态,因此请确保这两种方法(您的和浏览器的)不会在某些浏览器中发生冲突。

于 2012-05-05T02:59:47.670 回答