从数组列表中删除cookie

时间:2012-09-23 23:30:17

标签: jquery cookies

我无法弄清楚如何删除数组中的cookie?

基本上我有一个数组,我存储了所有的cookie。现在我想 使用点击事件删除'cookie',但无法弄清楚cookie列表的原因 没有更新?

也许我需要重置cookie列表?

请建议。

以下是我插入Cookie的代码:

var my_array = [];
$(".addCookie a").click(function(e) {       
  var val = $(this).attr("href");                                         
  if (my_array.indexOf(val) == -1) {   my_array.push(val); }   
$.cookie('Cookies', my_array);
e.preventDefault();
return false;       
 });

这用于删除数组中存在的cookie

$(".remCookie a").click(function(e) {
    var val = $(this).attr("href");
    var index = my_array.indexOf(val);
    if (index == -1) {
        my_array.splice(index, 1);
    }       
        e.preventDefault();
    return false;
});

1 个答案:

答案 0 :(得分:1)

删除Cookie时有两个问题;如果索引 等于-1(即它的值不在数组中),则拼接数组,并且不将数组放入cookie中。

$(".remCookie a").click(function(e) {
  var val = $(this).attr("href");
  var index = my_array.indexOf(val);
  if (index != -1) {
    my_array.splice(index, 1);
    $.cookie('Cookies', my_array);
  }       
  e.preventDefault();
  return false;

});