Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript java脚本中如何通过cookie获取单值_Javascript_Jquery_Cookies - Fatal编程技术网

Javascript java脚本中如何通过cookie获取单值

Javascript java脚本中如何通过cookie获取单值,javascript,jquery,cookies,Javascript,Jquery,Cookies,java脚本代码是存储cookie document.cookie = 'CookieName='+'grid'; 我想获得CookieNamevaluegrid我必须存储许多cookie,但是我在cookie中的第一个索引处获得了这个cookie存储 $( document ).ready(function() { var CookieName=document.cookie; if(CookieName =='grid') { $('#tab_b').

java脚本代码是存储cookie

document.cookie = 'CookieName='+'grid';
我想获得
CookieName
value
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 "";
}

我觉得你觉得杰伊·布兰查德的答案太长了,所以我会提供一个更短的选择。但首先让我说点别的。作为对杰伊·布兰查德回答的评论,你写道:

谢谢兄弟,我已经得到了它,非常简单和简短的函数检查它
var allcookies=document.cookie;cookiearray=allcookies.split(“;”);name=cookiearray[0]。拆分('=')[0];value=cookiearray[0]。拆分('=')[1]

但是,我强烈建议您重新考虑,因为这假设
CookieName
始终是第一个cookie。(有人可能会说“但我会以某种方式确保它始终是”,但问题是,这是键/值,而不是数组,因此这种方法在概念上是错误的,令人困惑的,或者正如他们所说的,是糟糕的做法)

现在,对于代码:

var cookieValue = document.cookie.replace(/(?:(?:^|.*;\s*)CookieName\s*\=\s*([^;]*).*$)|^.*$/, "$1");

这是我平淡无奇地偷来的东西,如果你想了解更多关于cookie的信息,我强烈建议你使用它。

为什么你要用Javascript而不是PHP创建cookie?我正在使用jquery的制表符,在同一页面上有网格视图和列表视图,我想从网格视图和列表视图中搜索,搜索时我只在列表视图中显示列表视图中的记录和我在网格视图中显示网格视图表单中的记录具有相同的页面文档。cookie返回所有设置为string
CookieName=grid的cookie;另一个=它的_值
我想隐藏tabing div,而基于cookie只有这一个我想得到Hanks bro我得到了它,并且非常简单和简短的函数检查它var allcookies=document.cookie;cookiearray=allcookies.split(“;”);name=cookiearray[0]。拆分('=')[0];value=cookiearray[0]。拆分('=')[1]@古拉马巴太好了,很高兴我能帮上忙!此外,(就像杰伊·布兰查德(Jay Blanchard)在对这个问题的评论中所说的那样),我建议你选择一个被接受的答案(或者解释一下当前答案的不足)。这将有助于你、回答问题的人和社区。@GhulamAbbas如果这是解决你问题的答案,你需要接受这个答案:只需在向上和向下投票下面的灰色勾号上勾选答案。您将获得积分,用户将更倾向于在将来为您提供支持。
var cookieValue = document.cookie.replace(/(?:(?:^|.*;\s*)CookieName\s*\=\s*([^;]*).*$)|^.*$/, "$1");