如何从Cookie中删除附加的字符串

时间:2016-09-02 10:27:30

标签: javascript jquery cookies

我有附加到我的cookie的字符串,当用户点击按钮时,我需要点击的字符串从cookie中删除。但是已经存在的cookie中的字符串需要保留在那里。

通过其他API调用调用这些函数。

<html>
<head>
    <script type="text/javascript">
        window.onload = function(){
            document.getElementById('connStrings').innerHTML = "initialString";
            getProvidersForDisplay();
        }   

        function saveStringsState(stringsFromEvent)
        {
                var stringConns = stringsFromEvent.getConns;
                var div = document.getElementById('stringsConnected');
                div.innerHTML = div.innerHTML + " " + stringConns;

                Cookies.set('connStrings', div.innerHTML);  
        }

        function removeStringPassed(removedString)
        {
            var removedConnection = eventObj.provider;
            var div = document.getElementById('stringsConnected');

            div.innerHTML = div.innerHTML - removedString;
        }

        function getProvidersForDisplay() {
                if((Cookies.get('connStrings') != null)) {
                    document.getElementById('stringsConnected').innerHTML = (Cookies.get('connStrings'));
                }
}
    </script>   
</head>
<body>
    <div id="strings">
    <p>Your strings are: <span id="stringsConnected"></span></p>
    </div>
</body>
</html>

removeStringsPassed当前删除了传递的字符串,但是将初始字符串显示为NaN,因为它不是数字,我正在做减号。它也没有从cookie中删除,因此设置的实际字符串最终处于相同的状态。

有人可以帮我这个吗?只是为了删除从当前字符串和cookie中传入的removedString?

我正在使用的Cookie来自:https://github.com/js-cookie/js-cookie

由于

编辑:

我已经在innerHTML中添加了一个拆分字符串,似乎已经完成了它,然后设置了cookie。但现在用逗号替换它:/

修改: 在removeStringPassed中,我使用了这个:

div.innerHTML = div.innerHTML.split(removedString);
div.innerHTML = div.innerHTML.join("");
Cookies.set('provider', div.innerHTML);

但这会用逗号替换字符串,我怎么能阻止它呢?

1 个答案:

答案 0 :(得分:0)

我最后使用了它并且工作正常:

编辑:

我在innerHTML中添加了一个拆分字符串,似乎已经完成了它,然后设置了cookie。但现在用逗号替换它:/

编辑:在removeStringPassed中,我使用了这个:

div.innerHTML = div.innerHTML.split(removedString);
div.innerHTML = div.innerHTML.join("");
Cookies.set('provider', div.innerHTML);

但这会用逗号替换字符串,我怎么能阻止它呢?

div.innerHTML = div.innerHTML.split(removedString).join("");