添加到JQuery cookie并从中读取所有数组

添加到JQuery cookie并从中读取所有数组,jquery,arrays,cookies,arraylist,add,Jquery,Arrays,Cookies,Arraylist,Add,我试图检查一个简单的html页面,当我按下第一个按钮进入jquery cookie数组时,我可以添加数据,在另一个按钮中,我可以读取列表中的所有cookie值 只需尝试添加到cookie数组并将其值打印到一个范围中。但这段代码不会抛出任何控制台错误。阵列大小警报始终为零。我的js代码有什么问题?你能帮忙吗 /////////////////////// $.cookie.defaults.path='/'; var cookieList=函数(cookieName){ var cooki

我试图检查一个简单的html页面,当我按下第一个按钮进入jquery cookie数组时,我可以添加数据,在另一个按钮中,我可以读取列表中的所有cookie值

只需尝试添加到cookie数组并将其值打印到一个范围中。但这段代码不会抛出任何控制台错误。阵列大小警报始终为零。我的js代码有什么问题?你能帮忙吗




/////////////////////// $.cookie.defaults.path='/'; var cookieList=函数(cookieName){ var cookie=$.cookie(cookieName); var items=cookie?cookie.split(/,/):新数组(); 返回{ “添加”:功能(val){ var指数=项目指数(val); 如果(索引==-1){ 物品推送(val); $.cookie(cookieName,items.join(','); } }, “删除”:功能(val){ indx=项目索引OF(val); 如果(indx!=-1)项。拼接(indx,1); $.cookie(cookieName,items.join(','); }, “清除”:函数(){ items=null; $.cookie(cookieName,null); }, “项目”:功能(){ 退货项目; } } } /////////////////////// list_stockno=新的cookieList(“c_stockno”); /////////////////////// 函数addToCookie(){ 警报(“addToCookie已启动”); $stockno=$('#Text1').val(); 列表\库存编号。添加($stockno); 警报(列表库存编号项目长度); } /////////////////////// 函数readAllFromCookie(){ 警报(“readAllFromCookie已启动”); 对于($i=0;$i
如回复中所述进行了修改。但是没有运气

这不是答案。刚刚添加了路径参数名称/值对。正如你在下面提到的,没有运气。 数组值警报仍然为零,并且什么也没有发生。当我按下两个按钮元件时,也没有发生任何控制台错误

<html>
<head>
    <script src="Scripts/jquery-2.2.0.min.js"></script>
    <script src="Scripts/jquery.cookie.js"></script>

</head>
<body>
    <form id="form1">
        <div>

            <input id="Text1" type="text" />

            <input id="Button1" type="button" value="ADD TO COOKIE ARRAY" onclick="addToCookie();" />
        </div>
    </form>
    <p>
        <input id="Button2" type="button" value="READ ALL COOKIE ARRAY INTO SPAN" onclick="readAllFromCookie();" />
        <span id="span_listhere"></span>
    </p>

    <script type="text/javascript">

        ///////////////////////

        var cookieList = function (cookieName) {

            var cookie = $.cookie(cookieName, { path: '/' });
            var items = cookie ? cookie.split(/,/) : new Array();

            return {
                "add": function (val) {
                    var index = items.indexOf(val);
                    if (index == -1) {
                        items.push(val);
                        // $.cookie(cookieName, items.join(','));
                        $.cookie(cookieName, items.join(','), { path: '/' });
                    }
                },
                "remove": function (val) {
                    indx = items.indexOf(val);
                    if (indx != -1) items.splice(indx, 1);
                    $.cookie(cookieName, items.join(','), { path: '/' });
                },
                "clear": function () {
                    items = null;
                    $.cookie(cookieName, { path: '/' });
                },
                "items": function () {
                    return items;
                }
            }
        }
        ///////////////////////
         list_stockno = new cookieList("c_stockno");

        ///////////////////////
        function addToCookie() {
            alert("addToCookie has been started");
            $stockno = $('#Text1').val();

            list_stockno.add($stockno);

            alert(list_stockno.items.length);
        }
        ///////////////////////
        function readAllFromCookie() {
            alert("readAllFromCookie has been started");

            for ($i = 0; $i < list_stockno.items.length; $i++) {
                $sn = list_stockno[$i];

                $mydata = ("stockno:" + $sn);
                $('#span_listhere').append($mydata);
            }


        }

    </script>
</body>
</html>


/////////////////////// var cookieList=函数(cookieName){ var cookie=$.cookie(cookieName,{path:'/'}); var items=cookie?cookie.split(/,/):新数组(); 返回{ “添加”:功能(val){ var指数=项目指数(val); 如果(索引==-1){ 物品推送(val); //$.cookie(cookieName,items.join(','); $.cookie(cookieName,items.join(','),{path:'/'}); } }, “删除”:功能(val){ indx=项目索引OF(val); 如果(indx!=-1)项。拼接(indx,1); $.cookie(cookieName,items.join(','),{path:'/'}); }, “清除”:函数(){ items=null; $.cookie(cookieName,{path:'/'}); }, “项目”:功能(){ 退货项目; } } } /////////////////////// list_stockno=新的cookieList(“c_stockno”); /////////////////////// 函数addToCookie(){ 警报(“addToCookie已启动”); $stockno=$('#Text1').val(); 列表\库存编号。添加($stockno); 警报(列表库存编号项目长度); } /////////////////////// 函数readAllFromCookie(){ 警报(“readAllFromCookie已启动”); 对于($i=0;$i
可能不是这样,但可以肯定的是,您是否尝试过指定cookie的路径

$.cookie(cookieName, items.join(','), { path: '/YourAppName' });

可能不是这样,但可以肯定的是,您是否尝试过指定cookie的路径

$.cookie(cookieName, items.join(','), { path: '/YourAppName' });

还可以看看这个:如果没有路径参数,代码是否不能工作?。因此,我必须为$.cookie?$.cookie.defaults.path='/'的每一行添加路径名称-值对参数;对于初始代码来说,这也没有任何意义。我只想将文本元素中的数据添加到jQueryCookie中,并将数组读回。这应该有多困难?除了默认的jquery.cookie,还有更好的库吗?请尝试使用纯js(如此链接中所示:来自Russ Cam的答案)也看看这个:如果没有path参数,代码是否会不工作?。因此,我必须为$.cookie?$.cookie.defaults.path='/'的每一行添加路径名称-值对参数;对于初始代码来说,这也没有任何意义。我只想将文本元素中的数据添加到jQueryCookie中,并将数组读回。这应该有多困难?除了默认的jquery.cookie,还有更好的库吗?请尝试使用纯js(如下面的链接:回答来自Russ Cam)