2014-02-07 80 views
0

我正在使用下面的JavaScript來設置cookie,但它沒有設置 cookie。 Chrome的調試器不會給我帶來任何錯誤,所有變量都是正確的。它似乎沒有設置cookie。 document.cookie 保持爲「」。任何人都可以建議爲什麼cookie沒有設置?設置cookie不起作用javascript

function setCookie(name,value,exdays){ 
    var date=new Date(); 
    date.setTime(date.getTime()+(exdays*24*60*60*1000)); 
    var expires="expires="+date.toGMTString(); 
    document.cookie=name + "=" + value + "; " + expires + "path=/"; 
} // setCookie ends 

如果您需要知道,我嘗試使用電話setCookie("username","user",365);

編輯:添加缺少「=」,代碼仍然無法正常工作。

回答

0

後,如果您是在本地運行過程中出現的代碼/文件,然後鍍鉻不設置cookie,如果你把它放在遠程的服務器上,然後它(頁)會工作。

出於測試目的,您可以從xampp/htdocs運行此頁。

+0

謝謝,我會試試這個。 –

+0

不客氣。 –

1

您在名稱和值之間缺少=。另外,你需要一個分號到期

document.cookie= name + "=" + value + "; " + expires + ";path=/"; 
+0

不能相信我錯過了,但我改變了它,它仍然表現得和以前一樣。 –

+0

@ user3211924,嘗試'document.cookie = name +「=」+ value +「;」+ expires +「; path = /」;'過期後需要分號 – Satpal

+0

@ user3211924,是否提供反饋意見 – Satpal

0

我發現的是,如果您將Cookie設置得過快了幾次,那麼Chrome會停止Cookie的更新。除了Chrome之外,我還沒有在任何瀏覽器上測試過這個。但我發現解決這個問題的唯一方法就是徹底退出Chrome並重新啓動它。在此之後,該頁面的cookie將爲空白。

我認爲這是Chrome的某種安全性,以確保第三方/病毒/壞廣告不會干擾您網站的Cookie。儘管如此,我無法找到並記錄這些信息,但這只是猜測發生了什麼。