【发布时间】:2011-03-22 22:19:52
【问题描述】:
我有两个 HTML 页面。输入少量输入后,用户将从第一页重定向到第二页。在将用户重定向到第二个 HTML 页面(使用 window.location="new HTML URL")之前,我使用 document.cookie DOM API 在 cookie 中保留了一些用户输入。
当我在第二个 HTML 页面中时,我无法从该 cookie 中检索值。我认为由于新 HTML 页面中的文档对象会发生变化,因此我的 cookie 值变得无法访问。
有人可以告诉我:如何从一个 javascript 在另一个 HTML 页面中的一个 HTML 页面中保存的 cookie 中检索值,即 HTML A 的 javascript 在 HTML B 的 javascript 中编写的 cookie?
我没有任何服务器端代码,所以我无法利用服务器端逻辑。此外,我不应该在 URL 中传递值。所以我需要一个关于纯 javascript 和 HTML 的解决方案。
如果有人有更好的解决方案,请告诉我。谢谢
【问题讨论】:
-
你不能使用 ASP、PHP 或 JSP 之类的东西吗?那些将解决这个问题。期间。
-
只要域和路径没有改变,并且您没有设置太短(或负数)的到期日期,在一个页面上设置并通过另一个页面阅读应该没有问题。请向我们提供有关这两个页面的一些信息,例如域和路径,以及您用于读取/写入 cookie 的一些代码。自 2005 年以来,我一直在维护一个开源 JavaScript cookie 库,因此我应该能够为您提供体面的信息。
-
@Tanner Ottinger - “那些将解决问题。期间”没有多大意义。无论代码来源/来源如何,相同的限制都适用于 cookie。此外,您没有解释其中一个服务器平台将如何解决问题。
-
我的意思是,使用这些语言会有很大的帮助很多,当涉及到 cookie 时,Javascript 无法与那些语言进行比较。他们有更多的内置支持来处理多页数据。在 PHP 中,设置 cookie 是一个单独的函数,而获取 cookie 只是将其从全局数组
_COOKIE中取出。在 Javascript 中,您必须从 cookie 字符串中提取它。 -
网址是什么?如果它们没有相同的域,那么您将无法在页面之间共享 cookie 值。 @Tanner Ottinger 你的 cmets 真的没有意义; 如果他的页面来自同一个域,那么 OP 想要做的事情是完全合理的。
标签: javascript cookies