ASP.NET中的cookie寫法:
protected void Button1_Click(object sender, EventArgs e)//寫cookie
{
HttpCookie cookie = new HttpCookie("name");//兩個名稱不一樣;1:實(shí)例化一個cookie對象(相當(dāng)于鍵值對name是鍵cookie是值)
cookie.Value = "marry"; //2:給cookie值
cookie.Expires = DateTime.Now.AddDays(1); //3:cookie的過期時間(在當(dāng)前時間上加任意多少任意單位的過期時間);如果不設(shè)置過期時間cookie不會寫到硬盤上,只存在于內(nèi)存中,當(dāng)關(guān)閉瀏覽器時這塊內(nèi)存就回收cookie就沒了;(臨時cookie)
Response.Cookies.Add(cookie);//4:真正執(zhí)行將對象放到集合中
}
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();//設(shè)置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]);
}
更多信息請查看IT技術(shù)專欄