asp.net通过js实现Cookie创建以及清除Cookie数组的代码

复制代码 代码如下:

  <%@ Page Language="C#" AutoEventWireup="true" CodeFile="BLTZ.aspx.cs" Inherits="BLTZ" %>

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  <script runat="server">

  protected void Button1_Click(object sender, EventArgs e)

  {

  HttpCookie cookie = Request.Cookies["MyCook"];

  // 没有就初使化

  if (cookie == null)

  {

  cookie = new HttpCookie("MyCook"); //初使化并设置Cookie的名称

  DateTime dt = DateTime.Now;

  TimeSpan ts = new TimeSpan(0, 0, 10, 0, 0);

  cookie.Expires = dt.Add(ts);

  Response.AppendCookie(cookie);

  }

  // 界面上有 5 个 checkBox,分别将 checkBox 的选值保存到 cookie 中

  for (int i = 1; i < 6; i++)

  {

  CheckBox control = this.FindControl(String.Format("CheckBox{0}", i)) as CheckBox;

  if (control == null) continue;

  string key = String.Format("Num{0}", i);

  string value = control.Checked.ToString();

  cookie.Values[key] = value;

  }

  // 遍历

  foreach (string key in cookie.Values.AllKeys)

  {

  string value = cookie.Values[key];

  Response.Write(String.Format("SubKey:{0};  SubValue:{1}<br />", key, value));

  }

  }

  </script>

  <html xmlns="http://www.w3.org/1999/xhtml" >

  <head id="Head1" runat="server">

  <title>无标题页</title>

  <script type="text/javascript">

  function ClearCookie() {

  var exp = new Date();

  exp.setTime(exp.getTime() - 1);

  var a = GetCookie('MyCook');

  alert(a);

  var b = name + "=" + a + "; expires=" + exp.toString();

  document.cookie = b;

  alert(b);

  }

  function GetCookie(name)

  //获得Cookie的原始值

  {

  var arg = name + "=";

  var alen = arg.length;

  var clen = document.cookie.length;

  alert(document.cookie);

  var i = 0;

  while (i < clen) {

  var j = i + alen;

  if (document.cookie.substring(i, j) == arg)

  return GetCookieVal(j);

  i = document.cookie.indexOf(" ", i) + 1;

  if (i == 0) break;

  }

  return null;

  }

  function GetCookieVal(offset) { //取得项名称为offset的cookie值

  var endstr = document.cookie.indexOf(";", offset);

  if (endstr == -1)

  endstr = document.cookie.length;

  return unescape(document.cookie.substring(offset, endstr));

  }

  </script>

  </head>

  <body>

  <form id="form1" runat="server" >

  <div>

  <asp:CheckBox ID="CheckBox1" runat="server" />

  <asp:CheckBox ID="CheckBox2" runat="server" />

  <asp:CheckBox ID="CheckBox3" runat="server" />

  <asp:CheckBox ID="CheckBox4" runat="server" />

  <asp:CheckBox ID="CheckBox5" runat="server" />

  <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />

  <a href="CWZ.aspx" >Post</a>

  <input type="button" value="清楚Cookie" onclick="ClearCookie();" />

  </div>

  </form>

  </body>

  </html>