在 ASP 中设置 Cookie .NET 复选框无法使用 JS

Set Cookie in ASP .NET CheckBox Does Not work Using JS

我想设置一个 cookie 来监听一个复选框 (true/false),这样它会在我设置 cookie 的页面代码下方更改 cookie 的状态

  $(document).ready(function ()
     {

         $('#ContentPlaceHolder1_chkSD').change(function setCookie() {
             if ($('#ContentPlaceHolder1_chkSD').is('checked')) {

                 document.cookie(setCookie, true);

                 // console.log('cooooooookie = true');
             }
             else {
                 // console.log('kooouuuuuukiiiie = false');
                 document.cookie(setCookie, false);
             }


         })

         function setCookie(c_name, value, exdays) {
             var exdate = new Date();
             exdate.setDate(exdate.getDate() + exdays);
             var c_value = escape(value) +
               ((exdays == null) ? "" : ("; expires=" + exdate.toUTCString()));
             document.cookie = c_name + "=" + c_value;
         }

这不起作用,我得到 0x800a138a - JavaScript 运行时错误:单击复选框后预期的功能

通过向函数传递预期参数(cookie 名称、值和过期时间)确保您正确调用了 setCookie 函数:

if ($('#ContentPlaceHolder1_chkSD').is('checked')) {
    setCookie("cookie_name", "true", null);
} else {
    setCookie("cookie_name", "false", null);
}