2

我想在 JS 中不需要 cookie 或服务器交互的情况下传输变量值,有什么办法吗?例如,如果我有 foo.js 和一个变量 fooVar = 10,而 bar.js 和 barVar 是否有任何方法可以用于没有 cookie 的 barVar = fooVar?

4

3 回答 3

3

根据您的评论,您可以将要访问的变量存储在第二页的第二页的查询字符串中,或​​者存储在第二页的查询字符串的哈希中。使用该查询字符串加载第二页。

例如在查询字符串中: http ://example.com/bar.html?myvar=5

或者例如在查询字符串的哈希中: http ://example.com/bar.html#?myvar=5

使用散列可能是最好的选择,因为您的服务器很可能会忽略您放入散列的任何内容(除非服务器被编程为不这样做)。

然后,您可以在 bar.html 加载的 javascript 中使用 window.location.hash 来获取哈希字符串并对其进行解码以获取您存储的变量...

于 2013-07-09T16:57:50.287 回答
1

您可以使用 HTML5 localStorage。localStorage 将您的数据保存到网络浏览器中。与 $_COOKIE 的不同之处在于数据只能通过带有 javascript 的 Web 浏览器访问,并且它们不会在每个 HTTP 请求中发送。是带有示例的链接。

于 2013-07-09T16:55:17.300 回答
1

你说你想把变量的值从一页带到下一页。为什么不使用网址?
在第二页的 url 中添加类似?fooVar=10的内容,然后使用第二页上的第二个脚本解析 url。

这是一个示例,您如何在第二个脚本中解析 url
如何获取查询字符串值

于 2013-07-09T17:02:50.240 回答