繁体   English   中英

如何使用jquery(或只是javascript)迭代cookie?

[英]How can I iterate over cookies using jquery (or just javascript)?

我正在使用Klaus Hartl“Cookie插件”$(document).ready上添加或更新cookie。 我有另一个事件,应该迭代所有的cookie,并使用每个cookie的值做一些事情。 如何迭代cookie集合并获取每个cookie的ID和值?

我在想这样的事情:

$.cookie.each(function(id, value) { 
            alert('ID='+id+' VAL='+value); 
        });

如果您只想查看cookie,没有额外的插件就不那么难了:

$.each(document.cookie.split(/; */), function()  {
  var splitCookie = this.split('=');
  // name is splitCookie[0], value is splitCookie[1]
});

在简单的javascript中它很容易:

var keyValuePairs = document.cookie.split(';');
for(var i = 0; i < keyValuePairs.length; i++) {
    var name = keyValuePairs[i].substring(0, keyValuePairs[i].indexOf('='));
    var value = keyValuePairs[i].substring(keyValuePairs[i].indexOf('=')+1);
}

另一个解决方案确实在名称之前创建了空格,这使得难以调试错误。

var keyValuePairs = document.cookie.split(/; */);
for(var i = 0; i < keyValuePairs.length; i++) {
    var name = keyValuePairs[i].substring(0, keyValuePairs[i].indexOf('='));
    var value = keyValuePairs[i].substring(keyValuePairs[i].indexOf('=')+1);
    ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM