0

我有一个网页,该网页在加载页面后立即使用 getJSON 查询数据库,以填充下拉框。然后,当用户从该初始框中选择一个选项时,将进行第二次 getJSON 调用,以使用相关数据填充第二个下拉列表。为了保存对数据库的调用(特别是如果用户不断在第一个组合框中切换值),我正在考虑将下拉菜单的数据保存在 cookie/ 但我想做一些事情cookie 只对当前会话有用……因为从技术上讲,数据库中的数据可能会发生变化。它不会经常改变……但它可以改变。

我找到了以下帖子:

jquery在cookie中保存json数据对象

我正在考虑尝试一下。
我正在考虑实现的逻辑是这样的:

一个。准备好文档后,检查 cookie 是否存在。如果没有,查询 db 并获取数据。创建 cookie b. 当会话被终止时,终止 cookie。

我的问题如下:

  1. 这是正确的方法吗?
  2. 如何修改上述 stackoverflow 帖子中的示例,以便 cookie 仅适用于当前会话?

供参考。目标浏览器是 IE 9。

谢谢。

编辑1:

我发现这篇文章用于使用 jquery 创建会话 cookie: create session based cookie, jquery 我会试一试。

编辑2:

我想我也会在使用它时检查 sessionStorage。

4

1 回答 1

0

绝对是一个有趣的方法。

使用此 cookie插件,如果您不指定expire,您的 cookie 将仅在会话期间保留。所以你可以简单地做:

$.cookie("basket-data", JSON.stringify($("#ArticlesHolder").data()));

它将仅在本次会议期间保留。

仅作记录 - 会话存储绝对是比 cookie 更好的选择。

于 2013-06-14T15:15:01.090 回答