萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp.net編程 >> ASP.NET及JS中的cookie基本用法

ASP.NET及JS中的cookie基本用法

   ASP.NET中的cookie寫法:

  protected void Button1_Click(object sender, EventArgs e)//寫cookie

  {

  HttpCookie cookie = new HttpCookie("name");//兩個名稱不一樣;1:實例化一個cookie對象(相當於鍵值對name是鍵cookie是值)

  cookie.Value = "marry"; //2:給cookie值

  cookie.Expires = DateTime.Now.AddDays(1); //3:cookie的過期時間(在當前時間上加任意多少任意單位的過期時間);如果不設置過期時間cookie不會寫到硬盤上,只存在於內存中,當關閉浏覽器時這塊內存就回收cookie就沒了;(臨時cookie)

  Response.Cookies.Add(cookie);//4:真正執行將對象放到集合中

  }

  protected void Button2_Click(object sender, EventArgs e)//讀cookie

  {

  if (Request.Cookies["name"] != null)//讀取

  {

  TextBox1.Text = Request.Cookies["name"].Value;//Cookies["name"]表示上面定義的cookie裡是鍵值對.value才是值

  }

  else

  {

  TextBox1.Text="沒有呦!";

  }

  }

  js中cookie的寫法:

  function writecookie() {

  var today = new Date();

  today.setDate(today.getDate() + 1);

  document.cookie = 'name=我的歌聲裡;expires=' + today.toGMTString();//設置cookie值和cookie的過期時間放在document裡

  document.cookie = 'username=曲婉婷;expires=' + today.toGMTString();

  document.cookie = 'password=123;expires=' + today.toGMTString();

  }

  function read()//讀cookie中的值

  {

  //讀多個

  var cookie = document.cookie;

  var arry = cookie.split(';');

  alert(arry);

  for (var i in arry) //與c#中的有所不同

  {

  var a = arry[i].split('=');

  // if (a[0] == " username")//一個cookie文件中如果有多個cookie用這種方法讀時,第一個名稱前沒有空格,以後的名稱前都有空格都要加空格;用trim去空格

  // {

  // alert(a[1]);

  // }

  if (a[0].trim(' ')=="username")//一個cookie文件中如果有多個cookie用這種方法讀時,第一個名稱前沒有空格,以後的名稱前都有空格都要加空格;用trim去空格(??????有問題啊?怎麼說不支持trim呢火狐就行ie不行可能配置問題什麼問題呢?)

  {

  alert(a[1]);

  }

copyright © 萬盛學電腦網 all rights reserved