两个HTML页面之间的HTTP cookie

时间:2011-03-22 13:31:02

标签: javascript cookies

我有两个HTML页面。输入少量输入后,用户将从第一页重定向到第二页。在将用户重定向到第二个HTML页面(使用window.location =“new HTML URL”)之前,我使用document.cookie DOM API在cookie中保留了一些用户输入。

当我在第二个HTML页面时,我无法从此cookie中检索值。我认为,由于文档对象在新的HTML页面中会发生变化,因此我的cookie值无法访问。

有人可以告诉我:如何从其他HTML页面的一个HTML页面中的一个javascript持久存储的cookie中检索值,即HTML A的javascript在HTML B的javascript中写的cookie?

我没有任何服务器端代码,所以我无法利用服务器端逻辑。此外,我不应该传递URL中的值。所以我需要一个简单的JavaScript和HTML解决方案。

如果有人有更好的解决方案,请告诉我。感谢

2 个答案:

答案 0 :(得分:3)

尝试使用localStorage而不是cookies,

// set your values in the first page
localStorage.setItem('itemKey', 'values');

// on the second page, retrieve them
var values = localStorage.getItem('itemKey');

您可以使用jStorage插件来实现跨浏览器行为。

也可以参考此question来存储对象而不是字符串

答案 1 :(得分:1)

JAAulde对他的回答表示赞同。

对于OP正在尝试做什么,像PHP这样的东西会很棒,在这种情况下我不会为了在两个页面之间传递数据而烦恼,这只是愚蠢的。但是,如果需要真正的持久性并且数据要求很简单,即使使用PHP等语言,cookie仍然是可行的方法。

这些是相当严苛的约束,这是一个类项目吗?也就是说,没有任何其他方法可以做你正在尝试的事情,除了一个丑陋且高度不安全的黑客攻击。