cookie不能保存在IE中

时间:2015-07-06 09:16:33

标签: javascript cookies

Cookie不能保存在IE中,但在其他浏览器中运行良好。我正在使用document.cookie。

示例:

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

function getCookie(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 == name) {
            return unescape(y);
        }
    }
}

1 个答案:

答案 0 :(得分:1)

我假设您正在从本地计算机上运行脚本,并且没有打开网页,就像2, 1, 2打开一样。最近,我遇到了类似的问题。在这种情况下,我的脚本无法在IE中存储cookie,尽管它在所有其他主流浏览器上都运行良好。经过一些谷歌搜索后,发现IE忽略了来自about:blank的cookie。我将页面上传到远程服务器代码后神奇地开始工作。

我已打开Google并运行您的代码,它在IE9中运行正常。

我希望您在浏览器(IE)设置中进行了必要的设置。如下所示

  1. 打开Internet Explorer 9
  2. 点击顶部右侧的工具图标,然后点击 互联网选项。
  3. 在顶部切换到隐私选项卡,然后单击高级 按钮。
  4. 允许第一方Cookie和第三方Cookie并启用会话 Cookies(根据您的要求)。