2016-07-19 7 views
0

나는 쿠키 설정 및 삭제에 익숙해지기 위해 연습 중입니다. 자연스럽게, 나는 그것을 가짜 빵집에 넣었다.쿠키는 저장할 수는 있지만 삭제할 수는 없습니다

나는 쿠키에 대한 Hamper 모델을 따르려고했고 콘솔에 저장할 수있었습니다. 그러나 어떤 이유로 든 Javascript를 통해 로컬 서버에서 삭제하려고 시도한 모든 메소드가 실패했습니다. Cookies.expire(), Cookies.set ((key, null)). get (key) 등을 시도했습니다. 서버를 다시 시작할 때조차도 아무 것도 작동하지 않는 것 같습니다.

편의를 위해 아래에 Github 저장소를 첨부했습니다.

https://github.com/jdshatz/cookies2

답변

1

는 올바른 구문되지 않습니다 confections2.js

document.getElementById('Order').on('click', function(){ 

의 기능이있다. 다시로드뿐만 아니라 함수 이름을 포함하는 - 대신은

document.getElementById('Order').onclick = function() { 
    var name = document.getElementById('consumer_name').value; 
    Cookies.set('consumer_name', name).get('consumer_name'); 
    var chocolate = document.getElementById('chocolate').value; 
    Cookies.set('chocolate', chocolate).get('chocolate'); 
    var sugar = document.getElementById('sugar').value; 
    Cookies.set('sugar', sugar).get('sugar'); 
    var lemon = document.getElementById('lemon').value; 
    Cookies.set('lemon', lemon).get('lemon'); 
} 

그런 다음 다음 자바 스크립트 기능을 변경

<input type="button" value="Reset" onclick="clearCookies();"> 

index.html을

에서 변경해야합니다.) (일반 더 결과 :(

function clearCookies(){ 
    Cookies.set('consumer_name', null); 
    Cookies.set('chocolate', 0); 
    Cookies.set('lemon',0); 
    Cookies.set('sugar',0); 
    location.reload(); 

} 생산하지 보인다;

그것은 null로 값을 재설정하고 0하지만 실제로 쿠키를 삭제하지 않습니다 당신은 다음과 같이 수정할 수 있습니다 -

합니다.
function clearCookies(){ 
//  Cookies.set('consumer_name', null); 
//  Cookies.set('chocolate', 0); 
//  Cookies.set('lemon',0); 
//  Cookies.set('sugar',0); 
     delete_cookie('consumer_name'); 
     delete_cookie('chocolate'); 
     delete_cookie('lemon'); 
     delete_cookie('sugar'); 
     location.reload(); 
}; 


function delete_cookie(name) { 
    document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 
} 
관련 문제