[英]how to get in java value of a cookie that was created in javascript?
[英]how to get single value by cookie in java script
Java脚本代码是存储cookie
document.cookie = 'CookieName='+'grid';
我想获得CookieName
值grid
我必须存储许多cookie,但是我在cookie的第一个索引处得到了这个cookie存储
$( document ).ready(function() {
var CookieName=document.cookie;
if(CookieName =='grid')
{
$('#tab_b').hide();
$('#tab_a').show();
}
else {
$('#tab_a').hide();
$('#tab_b').show();
}
});
如何获得CookieName值
我写了一个小函数(我可能可以使它效率更高,但是我已经使用了很长时间了),它应该对您有用:
function getCookieAttr(attribute) {
var attr = attribute + "="; // create an attribute string
var parts = document.cookie.split(';'); // split the cookie into parts
for(var i = 0; i <parts.length; i++) { // loop through the parts for each item
var item = parts[i];
while (item.charAt(0)==' ') { // account for spaces in the cookie
item = item.substring(1); // set the item
}
if (item.indexOf(attr) == 0) { // if the item matches the attribute
return item.substring(attr.length,item.length); // return the value
}
}
return "";
}
要使用该函数,请传递属性名称:
document.cookie = "CookieName=grid";
console.log(getCookieAttr('CookieName'));
我给您的印象是,您找到杰伊·布兰查德(Jay Blanchard)的答案的时间过长,因此我将提供一个简短的选择。 但是首先让我说点别的。 作为对杰伊·布兰查德答案的评论,您写道:
谢谢兄弟,我已经有了它,并且它非常简单和简短地检查了它
var allcookies = document.cookie; cookiearray = allcookies.split(';'); name = cookiearray[0].split('=')[0]; value = cookiearray[0].split('=')[1];
var allcookies = document.cookie; cookiearray = allcookies.split(';'); name = cookiearray[0].split('=')[0]; value = cookiearray[0].split('=')[1];
但是,我强烈建议您重新考虑一下,因为这假定CookieName
始终是第一个cookie。 (有人可能会说“但我会以某种方式确保它始终存在”,但重点是,这是键/值,而不是数组,因此该方法在概念上是错误的和令人困惑的,或者如他们所说,是错误的做法)。
现在,对于代码:
var cookieValue = document.cookie.replace(/(?:(?:^|.*;\s*)CookieName\s*\=\s*([^;]*).*$)|^.*$/, "$1");
这是我从Cookie的MDN页面上偷偷窃取的,如果您想了解有关Cookie的更多信息,我强烈建议您这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.