84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
使用jQuery怎么获取和删除cookie的值?
How to get and delete cookie values using jQuery? -PHP Chinese website Q&A-How to obtain and delete cookie values using jQuery? -PHP Chinese website Q&A
Let’s take a look and learn.
cookie在jquery中有指定的cookie操作类,这里先来介绍在使用cookie操作类时的一些问题,然后介绍正确的使用方法。
使用JQuery操作cookie时 发生取的值不正确的问题:
结果发现cookie有四个不同的属性:
名称,内容,域,路径
$.cookie('the_cookie'); // 读取 cookie $.cookie('the_cookie', 'the_value'); // 存储 cookie $.cookie('the_cookie', 'the_value', { expires: 7 }); // 存储一个带7天期限的 cookie $.cookie('the_cookie', '', { expires: -1 }); // 删除 cookie
使用:
$.cookie("currentMenuID", menuID);
时 未指定域和路径。
所以当域和路径不同时会产生不同的cookie
$.cookie("currentMenuID");
取值时会产生问题。
因此,使用:
$.cookie("currentMenuID", "menuID", { path: "/"});
进行覆盖。同域下同一个cookieID对应一个值。
关于cookie的path设置需要注意,如果不设置path:'/'的话,path则会根据目录自动设置
如:http://www.xxx.com/user/,path会被设置为 '/user'
$.extend({ /** 1. 设置cookie的值,把name变量的值设为value example $.cookie('name', 'value'); 2.新建一个cookie 包括有效期 路径 域名等 example $.cookie('name', 'value', {expires: 7, path: '/', domain: 'jquery.com', secure: true}); 3.新建cookie example $.cookie('name', 'value'); 4.删除一个cookie example $.cookie('name', null); 5.取一个cookie(name)值给myvar var account= $.cookie('name'); **/ cookieHelper: function(name, value, options) { if (typeof value != 'undefined') { // name and value given, set cookie options = options || {}; if (value === null) { value = ''; options.expires = -1; } var expires = ''; if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) { var date; if (typeof options.expires == 'number') { date = new Date(); date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000)); } else { date = options.expires; } expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE } var path = options.path ? '; path=' + options.path : ''; var domain = options.domain ? '; domain=' + options.domain : ''; var secure = options.secure ? '; secure' : ''; document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join(''); } else { // only name given, get cookie var cookieValue = null; if (document.cookie && document.cookie != '') { var cookies = document.cookie.split(';'); for (var i = 0; i < cookies.length; i++) { var cookie = jQuery.trim(cookies[i]); // Does this cookie string begin with the name we want? if (cookie.substring(0, name.length + 1) == (name + '=')) { cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); break; } } } return cookieValue; } } });
How to get and delete cookie values using jQuery? -PHP Chinese website Q&A-How to obtain and delete cookie values using jQuery? -PHP Chinese website Q&A
Let’s take a look and learn.
cookie在jquery中有指定的cookie操作类,这里先来介绍在使用cookie操作类时的一些问题,然后介绍正确的使用方法。
使用JQuery操作cookie时 发生取的值不正确的问题:
结果发现cookie有四个不同的属性:
名称,内容,域,路径
使用:
时 未指定域和路径。
所以当域和路径不同时会产生不同的cookie
取值时会产生问题。
因此,使用:
进行覆盖。同域下同一个cookieID对应一个值。
关于cookie的path设置需要注意,如果不设置path:'/'的话,path则会根据目录自动设置
如:http://www.xxx.com/user/,path会被设置为 '/user'