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

我使用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); ...