私はJavaScriptを初めて使用するので、簡単な質問があります。名前=ユーザー名、値= id、有効期限=30日でJavaScriptを使用してCookieを設定したいと思います。いくつかの例を試しましたが、ブラウザでCookieを確認すると、名前:未定義のコンテンツ:未定義の有効期限:セッションの終了時に表示されます。
4 に答える
0
一例は次のとおりです。
function setCookie(name, value, expires, path, domain, secure) {
document.cookie = name + "=" + escape(value) +
((expires) ? "; expires=" + expires : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
var expires = new Date(new Date().getTime()+30*24*60*60*1000).toGMTString();
setCookie("username", "id", expires);
于 2012-05-05T21:12:06.163 に答える
0
jquery の世界にいる場合は、jquery cookie プラグインをチェックしてみてください。次のように言えます。
$.cookie('the_cookie', 'the_value', { 有効期限: 7, パス: '/' });
また、パラメーターを比較的簡単に設定できます。
Cookie を扱うときは、クエリを設定するドメインとパスを覚えておくことが重要です。クエリをパス: '/' およびドメイン: 'yourdomain.com' に設定することから始めるのがおそらく安全です (すべてのサブドメインで機能するように)。
于 2012-05-05T21:14:28.567 に答える
0
このようにしてみてください:
var now = new Date();
var expire = new Date(now.getTime() + (30 * 24 * 60 * 60 * 1000));
document.cookie = 'username=id' + ';expires=' + expire.toGMTString();
于 2012-05-05T21:14:33.383 に答える
0
ルート ドメインを使用して、サブドメイン間で Cookie にアクセスできることを確認してください (例: www.domain.com ではなく domain.com)。
すべてのブラウザーで同じ結果が表示されますか、それとも Internet Explorer だけの問題ですか?
私はこれらの 2 つの機能を問題なく頻繁に使用しています。
function n__readCookie(n__name)
{
var n__nameEQ = n__name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++)
{
var c = ca[i];
while (c.charAt(0)==' ')
{ c = c.substring(1,c.length); }
if (c.indexOf(n__nameEQ) == 0)
{ return c.substring(n__nameEQ.length,c.length); }
}
return false;
}
function n__createCookie(n__name, n__value, n__days, n__domain)
{
if (n__days)
{
var n__date = new Date();
n__date.setTime(n__date.getTime()+(n__days*24*60*60*1000));
var n__expires = "; expires="+n__date.toGMTString();
}
else
{
var n__expires = "";
}
document.cookie = n__name+"="+n__value+n__expires+"; path=/;domain=" + n__domain;
}
于 2012-05-05T22:14:49.507 に答える