jQuery で Cookie を設定および削除する

Habdul Hazeez 2023年6月21日
  1. jQuery で jquery-cookie を使用して Cookie を作成および削除する
  2. jQuery でカスタム関数を使用して Cookie を作成および削除する
jQuery で Cookie を設定および削除する

この記事では、jQuery を使用して Cookie を設定および削除する方法の 2つの例を説明します。 最初の例では、GitHub から入手できる jquery-cookie というプラグインを使用します。

2 番目の例では、カスタム関数を使用して Cookie を作成および削除します。

jquery-cookie プラグインを使用すると、Web ブラウザーで Cookie を作成および削除できます。 プラグインには、これを可能にする 2つの機能があります。 $.cookie()$.removeCookie() です。

$.cookie() 関数を使用すると、Cookie 名とそのパラメーターを設定できます。 $.removeCookie() 関数は Cookie を削除します。

GitHub リポジトリ から jquery-cookie を取得できます。 その後、作業ディレクトリに保存します。 そこから、jQuery もリンクしていることを確認します。

次のコードには、jquery-cookie を使用して Cookie を設定および削除する方法の詳細が含まれています。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>01-jQuery-set-cookie</title>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js" integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
</head>
<body>
	<script type="text/javascript" src="js/jquery-cookie.js"></script>
    <script>
    	// Define a cookie called DelftStack_Cookie
    	// and set its value to 4500.
        $.cookie("DelfStack_Cookie", 4500);
        let cookie_value = $.cookie("DelfStack_Cookie");
        /* Remove the cookie
        $.removeCookie("DelfStack_Cookie");*/
    </script>
</body>
</html>

出力 (ブラウザ コンソールを観察):

jQuery-cookie.jsでCookieを設定

時間を計算し、document.cookie() メソッドを使用するカスタム関数は、Cookie を設定および削除できます。 その後、時間計算を使用して Cookie の有効期限を決定します。

このためには、Date オブジェクト メソッドが必要です。 これらは、setTime()getTime()、および toGMTString() です。 さらに、encodeURIComponent を使用して Cookie 名の文字をエスケープします。

次のコードには、Cookie を設定するために使用できるカスタム関数があります。 ただし、Cookie を削除できるコードはコメントとして残しました。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>02-jQuery-set-cookie</title>
</head>
<body>
    <script>
        function create_cookie(cookie_name, cookie_value, cookie_life_time) {
		    let cookie_expires;

		    if (cookie_life_time) {
		        let current_date = new Date();
		        let current_time = current_date.getTime();
		        current_date.setTime(current_time + (cookie_life_time * 24 * 60 * 60 * 1000));
		        cookie_expires = "; expires=" + current_date.toGMTString();
		    } else {
		        cookie_expires = "";
		    }
		    document.cookie = encodeURIComponent(cookie_name) + "=" + encodeURIComponent(cookie_value) + cookie_expires + "; path=/";
		}

		create_cookie('Habdul Hazeez', '14092022', 1);

		/* Erase the stored cookie
		function erase_cookie(cookie_name) {
		    create_cookie(cookie_name, "", -1);
		}*/
    </script>
</body>
</html>

出力 (ブラウザ コンソールを観察):

カスタム機能でCookieを設定

著者: Habdul Hazeez
Habdul Hazeez avatar Habdul Hazeez avatar

Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.

LinkedIn

関連記事 - jQuery Cookie