Search code examples
javascriptjqueryjquery-pluginsjquery-cookiecookie-path

JQuery cookie extension will set a cookie with a path but will not read it


First, set a cookie:

jQuery.cookie('monster', 'big', { path : '/sesame/'});

Next, try to read it:

jQuery.cookie('monster');

Firefox tells me that the cookie has indeed been set. The value is big and the path is /sesame/. And yet when I tried to read the cookie it wouldn't work.

Alternate version of the question: How do I specify the path when reading a cookie?

As an experiment I used the following syntax but it sets a cookie rather than read one.

$.cookie('cookie_name', { path: '/path/' });

Solution

  • JQuery cookie extension searches the document.cookie attribute to find a cookie and read its value. Document.cookie will only return the name, value pairs for cookies under the current document path. It does however allow you to set a cookie for a path different from the current document path.

    Therefore this is not a limitation/bug in the jQuery cookie plugin; rather it is a byproduct of how cookies are handled in Javascript.