在jQuery中保存开关

本文关键字:开关 保存 jQuery | 更新日期: 2023-09-27 18:17:53

我在屏幕底部有一个登录表单,它通过滑动开关切换打开和关闭。如果用户更改页面,打开或关闭状态保持不变,我怎么能做到呢?也许是Ajax更新面板?这是我的JQuery代码,我有toggle:

       <script type="text/javascript">
          if ($('#divLoginFootForm').is(":visible")) {
              $('#divLoginFootForm').show();
          }
          else {
              $('#divLoginFootForm').show();
          }
          $('.log').click(function () {
              $('#divLoginFootForm').slideToggle('slow', function () {
                  // Animation complete
              });
          });

</script> 

谢谢!

在jQuery中保存开关

可以使用cookie来维护状态。看一下这个例子

http://www.electrictoolbox.com/jquery-cookies/

将表单的可见状态存储到cookie中。在随后的请求中,从cookie中读取可见状态,并将其应用到表单中。

您可以轻松地将本页的三个功能合并到quirkmode上,用于读取/写入/删除cookie。

在隐藏字段中跟踪切换状态,然后在页面初始加载时设置切换状态。您需要使用隐藏字段,因为该值必须在客户机和服务器上都可以访问。在客户端,当用户切换状态时,设置隐藏字段的val以反映状态。

然后,因为你使用的是asp.net,状态将在回发之间保留,你可以在代码隐藏中控制初始状态等。

如果你使用cookie,那么状态将在用户打开的页面的所有实例之间共享(即在多个选项卡中),这可能不是你想要的。

编辑:这里有一个问题,说明如何设置一个隐藏字段的值与jquery。

您有两个选择:

    饼干
  1. 会话项收集(如果使用ASP.Net)

Cookie可能是有益的,因为它不是特定于您的web平台,jQuery可以自己完成。

如果你想把它保存在代码中,而不是写到cookie中,那么Session Items Collection将是很好的。

如果没有理由让服务器知道这个状态,我建议使用cookie.