Friday, 15 September 2017

javascript - How do I set/unset a cookie with jQuery?



How do I set and unset a cookie using jQuery, for example create a cookie named test and set the value to 1?


Answer



Update April 2019



jQuery isn't needed for cookie reading/manipulation, so don't use the original answer below.




Go to https://github.com/js-cookie/js-cookie instead, and use the library there that doesn't depend on jQuery.



Basic examples:



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

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



See the docs on github for details.






See the plugin:



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




You can then do:



$.cookie("test", 1);


To delete:



$.removeCookie("test");



Additionally, to set a timeout of a certain number of days (10 here) on the cookie:



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


If the expires option is omitted, then the cookie becomes a session cookie and is deleted when the browser exits.



To cover all the options:



$.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).
});


To read back the value of the cookie:



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


You may wish to specify the path parameter if the cookie was created on a different path to the current one:




var cookieValue = $.cookie("test", { path: '/foo' });


UPDATE (April 2015):



As stated in the comments below, the team that worked on the original plugin has removed the jQuery dependency in a new project (https://github.com/js-cookie/js-cookie) which has the same functionality and general syntax as the jQuery version. Apparently the original plugin isn't going anywhere though.


No comments:

Post a Comment

casting - Why wasn't Tobey Maguire in The Amazing Spider-Man? - Movies & TV

In the Spider-Man franchise, Tobey Maguire is an outstanding performer as a Spider-Man and also reprised his role in the sequels Spider-Man...