【问题标题】:persist value between two pages using javascript [duplicate]使用javascript在两个页面之间保持值[重复]
【发布时间】:2011-01-29 11:38:26
【问题描述】:

我有一个 html 页面,现在我在其中存储了一些用户选择的值,并希望在另一个 html 页面上使用这些值。

我在我的模块中使用 jquery,我已经尝试过 window.name 和 window.localStorage 但它们不会在两个页面之间保留值。

所以请帮我解决这个问题。

【问题讨论】:

标签: javascript jquery html persistent-storage


【解决方案1】:

如果您不想要 cookie,并且您从第一页指向第二页,那么如何将值作为 GET 变量传递到下一页:

http://example.com/newpage.html?var1=blah?var2=blerg

然后您可以使用window.location.search 访问该数据。

【讨论】:

  • 我可以考虑一下,但限制是保持 url 干净
  • 坦率地说,这是一个愚蠢的限制。
  • 使用相同的原则,使用 url 的散列部分可能更“干净” - 这样它与服务器无关,并且纯粹是客户端,例如 http://example.com/newpage.html#var1=blah&var2=blerg然后,您在第二页中的 javascript 可以从 window.location.hash 读取此内容,然后如果您想保持 URL 干净,您可以删除散列 - 因为它是一个散列,这不会导致另一个往返服务器,保持一切本地/客户端/浏览器端
【解决方案2】:

您可以使用“哈希”:

http://my.app.com/page2.html#name1=val1&name2=val2

服务器会忽略哈希,保持“干净”。第二页可以从

读取哈希
window.location.hash

然后用一些简单的字符串/正则表达式/数组操作解析出名称/值对。

如果您希望哈希“隐藏”,您的第二个页面也可以从 URL 中删除哈希 - 这不会导致再次访问服务器 - 更改哈希只会导致浏览器/客户端行为。

【讨论】:

    【解决方案3】:

    如果只是几个值,cookie 怎么样?

    【讨论】:

      【解决方案4】:

      将值存储在第一页的 cookie 中,然后在第二页检索它。使用 Jquery Cookie 插件http://plugins.jquery.com/project/cookie

      非常简单

      【讨论】:

        【解决方案5】:

        您必须尝试使用​​ cookie(假设用户足够好,可以启用这些)。 这是一个非常有用的链接:http://www.w3schools.com/JS/js_cookies.asp

        【讨论】:

          【解决方案6】:

          最后我得到了非常酷的解决方案

          http://plugins.jquery.com/project/DOMCached

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-09-17
            • 1970-01-01
            • 2013-07-05
            • 2021-12-13
            • 1970-01-01
            相关资源
            最近更新 更多