2017-08-03 50 views
0

我想刪除瀏覽器cookie,當點擊一個按鈕。我檢查了我的代碼,發現onclick事件工作並執行了deleteCookie函數,但cookie未被刪除。點擊事件沒有刪除瀏覽器cookie

下面是我的代碼:

$(".close-conversation").on("click", function (e) { 
     e.preventDefault(); 
     console.log('button clicked'); 
     deleteCookie('instanceId'); 
     deleteCookie('chatWindow'); 
     deleteCookie('userdataLoaded'); 
}); 


//deleteCookie function 

function deleteCookie(cname) { 
    document.cookie = cname + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 
    console.log('cookie deleted') 
} 

請幫我發現其中的錯誤。提前致謝。

+0

您是否嘗試設置路徑? 'document.cookie = cname +「=; expires = Thu,1970年1月1日00:00:00 UTC; path = /;」;' – Zenoo

+0

你的代碼工作正常,檢查小提琴https://jsfiddle.net/ku3zgLqe/ – Shiladitya

+0

[按名稱刪除Cookie?]的可能重複(https://stackoverflow.com/questions/10593013/delete-cookie-by-name) –

回答

0

您已經硬編碼過期值,將其設置爲當前時間以刪除cookie。

function deleteCookie(cname) { 
    var d = new Date(); 
    d.setTime(d.getTime()); 
    var expires = "expires="+d.toUTCString(); 
    document.cookie = cname + '=;'+ expires; 
    console.log('cookie deleted') 
}