2012-07-06 52 views
1

下面是我寫的代碼來設置域名=「.example.com」的cookie,但這是行不通的。任何想法的代碼有什麼問題?但是,如果我刪除域名,它工作正常。寫一個域名的cookie

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript"> 

function setCookie(c_name,value,exdays) 
{ 
     alert("Cookie = " + document.cookie); 

     var c_value=escape(value);`enter code here` 

     var myDate = new Date(); 

     myDate.setMonth(myDate.getMonth() + 12); 
     document.cookie = c_name +"=" + value + ";expires=" + myDate + ";domain=.example.com;path=/"; 

} 

</script> 
</head> 
<body onload="setCookie('name','value')"> 
</body> 
</html> 

回答

0

試試這些功能。它可以幫助;)

cookie_create = function (name,value,days) { 
    var expires, date; 

    if (days) { 
     date = new Date(); 
     date.setTime(date.getTime()+(days*24*60*60*1000)); 
     expires = "; expires="+date.toGMTString(); 
    } 
    else expires = ""; 
    document.cookie = name+"="+value+expires+"; path=/"; 

expires = date = null; 
}; 

cookie_read = function (name) { 
    var nameEQ = name + "=", 
    ca = document.cookie.split(';'), 
    len = ca.length, 
    i, c; 

    for(i = 0; i < len; ++i) { 
     c = ca[i]; 
     while (c.charAt(0) === ' ') c = c.substring(1); //,c.length); 
     if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length); //,c.length); 
    } 

nameEQ = name = ca = i = c = len = null; 
return null; 
}; 

cookie_erase = function (name){ 
    cookie_create(name,"",-1); 
name = null; 
}; 
+0

嗨。感謝您的回覆,但我看不到任何代碼來設置域名? – 2012-07-06 07:39:52

+0

這是因爲沒有域名:) Cookie只是一個大字符串。你放進你想要和需要的東西里面。格式化你的字符串,並把它作爲值參數。 – CoR 2012-07-06 13:38:41

0

試試這個

function setCookie(name, value, expires, path, domain, secure) { 
    document.cookie = name + "=" + escape(value) + 
    ((expires) ? "; expires=" + expires : "") + 
    ((path) ? "; path=" + path : "; path=" + "/") + 
    ((domain) ? "; domain=" + domain : "; domain=.example.com") + 
    ((secure) ? "; secure" : ""); 
}