0

配列内の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;
});
4

1 に答える 1

1

Cookie を削除すると、2 つの問題があります。インデックス-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;

});

于 2012-09-23T23:42:29.750 に答える