1

我有以下情况:用户提交表单,我通过 Ajax 请求从服务器获取数据并显示图表。但是,我想让用户选择在提交表格后以表格形式显示图表中的数据或导出为 csv。

我想知道存储数据的最佳解决方案是什么,考虑到如果用户打开一个新窗口再次提交表单,我不希望数据持续存在。

该应用程序位于 Rails 中。

谢谢。

4

2 回答 2

1

你有几个选择:

Cookies LocalStorage SessionStorage

更多信息:https ://developer.mozilla.org/en/DOM/Storage

非标准:

window.name 可以存储从 1mb 到 10mb 的任意位置,具体取决于浏览器。这更像是一种黑客攻击,但相当稳定。您需要在此实现自己的访问器/设置器方法,其中 localStorage 和 sessionStorage 内置了 API。

于 2012-08-02T20:51:55.987 回答
1

如果您的所有用户浏览器都支持它,我个人会推荐本地存储。

它使用起来非常简单,您可以使用这些方法访问它。

localStorage.getItem("Itemkey");
localStorage.setItem("Itemkey","value");
localStorage.removeItem("ItemKey");

它总是一个好方法,这意味着您可以为每个窗口分配一个不同的本地存储密钥,甚至在窗口关闭或卸载时删除项目!

作为参考,我发现这非常有用:http ://diveintohtml5.info/storage.html

并将其与存储 JSON 对象 ( http://www.json.org/js.html ) 结合起来,您就有了一个非常快速、简单且易于使用的解决方案。或者甚至只存储一个字符串、数组或任何需要的东西。

于 2012-08-02T21:08:00.463 回答