2011-04-05 7 views
1

내 쿠키를 반복하는 다음 스크립트를 만들었습니다. 일치하는 항목을 찾으면 쿠키에서 일치하는 값만 제거하려고합니다. 이것을 어떻게 성취합니까?Jquery와 cookie.split을 사용하여 쿠키에서 값 제거

var cookieName = 'myCookie'; 
var cookie = $.cookie("preferences"); 
var cookie = cookie.split('|'); 

$(cookie).each(function(index){ 
     var thisCookieData = this.split(','); 
     if(thisCookieData[0] == thisWidget.id){ 
      alert("Match!"); 
     } 
     alert(thisCookieData); 
}); 
+0

나는 당신이 (첫 번째'split'에 의한) cookie''의 전체 부분을할지 모르겠습니다 제거 일치 내에서, 또는 단지 경우 두 번째 분할로 인한 청크의 일부. 그럼에도 불구하고 "magic string"형식을 사용하는 것은 권장하지 않습니다. JSON과 같은 직렬화 체계를 사용하여 구조를 저장합니다. JSON 및 jQuery 지원이 내장 된 JS 쿠키 라이브러리가 있습니다. – JAAulde

+0

은 의미가 있습니다. 감사합니다. – Prometheus

답변

2

이 코드를 사용할 수

 
    cookie = $.grep(cookie, function(item, index) { 
     var parts = item.split(','); 
     return parts[0] !== id; 
    }).join('|'); 

그렙 지정된 기능을 충족시키는 배열의 요소를 발견 JQuery와 함수이다.

0

분리, 제거하고 다시 가입 :

.split(',') 
... 
.join(',')