繁体   English   中英

将文本添加到textarea的Javascript,然后将textarea保存为cookie

[英]Javascript to add text into textarea then save textarea as cookie

我的客户想要一个在线显示其产品的站点,但是他不想要一个电子商务站点,因为该站点拥有的产品数量很少。

我想在每个产品上创建一个按钮,当用户单击该按钮时会将其存储在Cookie中。 我想到的是,我在页面内创建了一个隐藏的文本区域,当用户单击每种产品上的订购按钮时,它将被添加到文本区域并同时保存到Cookie中。 然后,当用户转到订单页面时,订单将被加载到文本区域中。

我在在线页面上找到了javascript部分。 下面是我的代码;

<div id="hide" style="display: none;">
        <textarea id="myContent2" name="myContent2"></textarea>
        <a onClick="addContent('myDiv2', document.getElementById('myContent2').value); setCookie('content', document.getElementById('myContent2').value, 7);">
        <br><br>
        <div id="myDiv2" style="font-weight: bold;"></div>

</div>

<script type="text/javascript">
    function addContent(divName, content) {
        document.getElementById(divName).innerHTML = content;
       }
</script>

<script type="text/javascript">
            function setCookie(c_name,value,expiredays) {
        var exdate=new Date();
        exdate.setDate(exdate.getDate()+expiredays);
        document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
    }
    function getCookie(c_name) {
        if (document.cookie.length>0) {
        c_start=document.cookie.indexOf(c_name + "=");
        if (c_start!=-1) { 
            c_start=c_start + c_name.length+1; 
            c_end=document.cookie.indexOf(";",c_start);
            if (c_end==-1) c_end=document.cookie.length;
            var cookieContent = "Welcome back " + unescape(document.cookie.substring(c_start,c_end));
            document.getElementById('myDiv2').innerHTML = cookieContent;
        } 
        }
    }
    getCookie('content');
</script>

这是用户单击产品页面上的订购按钮的地方

<a onClick="addContent('myDiv2', document.myContent2.append("Product No 1") );  setCookie('content', document.getElementById('myContent2').value, 7);"> 

问题是,当用户单击按钮时,它不会将任何内容发送到textarea,同时不会更新cookie。 我该如何解决此问题,以及如何确保每次用户单击“订购”按钮时,它都会将新数据添加到文本区域中,而不是擦除它。

我建议您使用一个插件来像这样一个一个简单的cookie访问,然后就像

function storeValue(key, value){
    $.cookie(key, value)
}

function getValue(key){
    return $.cookie(key);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM