1. ホーム
  2. javascript

[解決済み] jQueryでクッキーを設定/解除するにはどうすればよいですか?

2022-03-15 15:52:44

質問

jQueryを使ってクッキーを設定したり解除したりするにはどうすればよいのでしょうか。 test に設定し、その値を 1 ?

解決方法は?

2019年4月更新

jQueryはクッキーの読み取り/操作には必要ないので、以下のオリジナルの回答は使わないでください。

次のページへ https://github.com/js-cookie/js-cookie の代わりに、jQueryに依存しないライブラリを使ってください。

基本的な例です。

// Set a cookie
Cookies.set('name', 'value');

// Read the cookie
Cookies.get('name') => // => 'value'

詳しくはgithubのドキュメントをご覧ください。


2019年4月以前(旧)

プラグインをご覧ください。

https://github.com/carhartl/jquery-cookie

すると、できるようになります。

$.cookie("test", 1);

削除する場合

$.removeCookie("test");

さらに、クッキーに一定の日数(ここでは10日)のタイムアウトを設定すること。

$.cookie("test", 1, { expires : 10 });

expiresオプションが省略された場合、クッキーはセッションクッキーとなり、ブラウザの終了と同時に削除されます。

すべてのオプションを網羅するために

$.cookie("test", 1, {
   expires : 10,           // Expires in 10 days

   path    : '/',          // The value of the path attribute of the cookie
                           // (Default: path of page that created the cookie).

   domain  : 'jquery.com', // The value of the domain attribute of the cookie
                           // (Default: domain of page that created the cookie).

   secure  : true          // If set to true the secure attribute of the cookie
                           // will be set and the cookie transmission will
                           // require a secure protocol (defaults to false).
});

Cookieの値を読み出すこと。

var cookieValue = $.cookie("test");

UPDATE(2015年4月)。

以下のコメントにあるように、オリジナルのプラグインに携わったチームは、新しいプロジェクトでjQueryの依存関係を取り除きました( https://github.com/js-cookie/js-cookie ) は、jQuery 版と同じ機能と一般的な構文を持っています。どうやら、オリジナルのプラグインはどこにも行かないようだ。