如何读取/写入本地文件的cookie:/// HTML文档?

时间:2012-10-20 20:44:26

标签: javascript android jquery cookies setcookie

如何使用Javascript或jQuery读取/写入本地file:/// HTML文档的Cookie?

我尝试过这个>>

function setCookie(c_name, value, exdays)
{
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + exdays);
  var c_value = escape(value) + 
    ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
  document.cookie = c_name + "=" + c_value;
}

function getCookie(c_name)
{
  var i, x, y, ARRcookies = document.cookie.split(";");
  for (i = 0; i < ARRcookies.length; i++)
  {
    x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
    y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
    x = x.replace(/^\s+|\s+$/g, "");
    if (x == c_name)
    {
      return unescape(y);
    }
  }
}

但它不起作用。

5 个答案:

答案 0 :(得分:8)

这取决于您的浏览器。 Chrome例如不允许cookie用于本地文件。见:where cookie saved for local HTML file

答案 1 :(得分:3)

这将在本地工作


// save data value

localStorage.setItem("name", "John");

// retrieve data value

var name = localStorage.getItem("name");

Original answer.

答案 2 :(得分:0)

试试这个:

https://github.com/carhartl/jquery-cookie

如果您需要存储多个值,请尝试以下方法:

https://github.com/tantau-horia/jquery-SuperCookie

答案 3 :(得分:0)

作为从文件加载页面的替代方法,您可以运行网络服务器并从localhost加载页面。 Apache随附OSX和Ubuntu。设置完之后,您将可以在本地页面上使用Cookie。

答案 4 :(得分:-2)

在其他浏览器中尝试mozilla允许本地存储cookie