【问题标题】:Getting a checkbox to write a JavaScript cookie获取一个复选框来编写一个 JavaScript cookie
【发布时间】:2012-08-04 02:18:52
【问题描述】:

我有一个带有初始屏幕的页面,用户可以在其中选择两种语言中的一种来显示网站的其余部分。每个语言选项旁边都有一个“记住我的选择”、HTML 表单、复选框。如何让选中的复选框写入带有语言首选项的 cookie,这将在以后访问时跳过启动屏幕?

【问题讨论】:

标签: javascript cookies checkbox setcookie


【解决方案1】:

也许你可以使用类似下面的东西,注意代码未测试:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<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)
    }

    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
                    return unescape(document.cookie.substring(c_start,c_end))
            } 
        }
        return null
    }
onload=function(){
document.getElementById('linksNewWindow').checked = getCookie('linksNewWindow')==1? true : false;
}
function set_check(){
setCookie('linksNewWindow', document.getElementById('linksNewWindow').checked? 1 : 0, 100);
}
</script>
</head>
<body>
<div>Hi</div>
<input type="checkbox" id="linksNewWindow" onchange="set_check();">
</body>
</html>

【讨论】:

    【解决方案2】:

    这是 javascript cookie 的一个很好的参考,http://www.quirksmode.org/js/cookies.html,我建议使用 PHP 而不是 javascript,因为我的 cookie 和会话功能在服务器端脚本中更强大。

    文档.cookie

    ^这是代表页面cookies的js代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-15
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多