如何使用jquery(或只是javascript)迭代cookies?
我正在使用添加或更新位于如何使用jquery(或只是javascript)迭代cookies?,javascript,jquery,cookies,Javascript,Jquery,Cookies,我正在使用添加或更新位于$(文档)的Cookie。就绪。我还有另一个事件,它应该迭代所有cookie,并对每个cookie的值进行处理。我如何迭代cookies集合并获得每个cookies的id和值 我是这样想的: $.cookie.each(function(id, value) { alert('ID='+id+' VAL='+value); }); 在普通javascript中,这相当容易: var keyValuePairs = docume
$(文档)的Cookie。就绪
。我还有另一个事件,它应该迭代所有cookie,并对每个cookie的值进行处理。我如何迭代cookies集合并获得每个cookies的id和值
我是这样想的:
$.cookie.each(function(id, value) {
alert('ID='+id+' VAL='+value);
});
在普通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(“;”);
对于(var i=0;i
如果您只想查看cookies,没有额外的插件也不难:
$.each(document.cookie.split(/; */), function() {
var splitCookie = this.split('=');
// name is splitCookie[0], value is splitCookie[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);
...
var-keyValuePairs=document.cookie.split(/;*/);
对于(var i=0;i
注意前导空格!您应该使用regex/;*/而不仅仅是字符串“;”。我喜欢这个解决方案,因为它允许cookie值中使用等号。非常好的解决方案。使用regex拆分要好得多。除了第一行中的函数定义外,其他都是正确的。将函数(cookieString)更改为函数(索引,cookieString)您已经找到了!哦,对了-对不起!我还认为jQuery将“this”绑定到每个元素,所以您也可以不使用它,只拆分“this”实际上,您应该拆分此
而不是cookieString
,因为cookieString
的值将是迭代的从零开始的索引。