監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 甲方項目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關閉
鷹潭網(wǎng)站建設公司

當前位置:工程項目OA系統(tǒng) > 泛普各地 > 江西OA系統(tǒng) > 鷹潭OA > 鷹潭網(wǎng)站建設公司

每個cookie都是一個名/值對

申請免費試用、咨詢電話:400-8352-114

鷹潭網(wǎng)站建設www.diyphp.net

設置cookie

  每個cookie都是一個名/值對,可以把下面這樣一個字符串賦值給document.cookie: 
document.cookie="userId=828";

  若是要一次存儲多個名/值對,可以運用分號加空格(; )離隔,例如:
document.cookie="userId=828; userName=hulk";

  在cookie的名或值中不能運用分號(;)、逗號(,)、等號(=)以及空格。在cookie的名中做到這點很簡單,但要保管的值是不確定的。如何來存 儲這些值呢?辦法是用escape()函數(shù)進行編碼,它能將一些特殊符號運用十六進制表明,例如空格將會編碼為“20%”,然后可以存儲于cookie值 中,并且運用此種計劃還可以防止中文亂碼的呈現(xiàn)。例如:
document.cookie="str="+escape("I love ajax");

  相當于:
 document.cookie="str=I%20love%20ajax";

  當運用escape()編碼后,在取出值今后需求運用unescape()進行解碼才干得到本來的cookie值,這在前面曾經(jīng)引見過。

  雖然document.cookie看上去就像一個特點,可以賦異樣的值。但它和普通的特點不一樣,改動它的賦值并不意味著喪失本來的值,例如接連履行下面兩條句子:
document.cookie="userId=828";

  document.cookie="userName=hulk";

  這時瀏覽器將保護兩個cookie,分別是userId和userName,因而給document.cookie賦值更像履行相似這樣的句子:
document.addcookie("userId=828");

  document.addcookie("userName=hulk");

  事實上,瀏覽器就是依照這樣的辦法來設置cookie的,若是要改動一個cookie的值,只需從頭賦值,例如:  
document.cookie="userId=929";

  這樣就將名為userId的cookie值設置為了929。

  獲取cookie的值

  下面引見如何獲取cookie的值。cookie的值可以由document.cookie直接取得:
var strcookie=document.cookie;

  這將取得以分號離隔的多個名/值對所組成的字符串,這些名/值對包羅了該域名下的一切cookie。例如:


  圖7.1顯現(xiàn)了輸出的cookie值。由此可見,只可以一次獲取一切的cookie值,而不能指定cookie稱號來取得指定的值,這正是處置 cookie值最費事的一部分。用戶必須本人剖析這個字符串,來獲取指定的cookie值,例如,要獲取userId的值,可以這樣完結(jié):
  

  這樣就得到了單個cookie的值

  用相似的辦法,可以獲取一個或多個cookie的值,其主要的技巧仍然是字符串和數(shù)組的相關操作。

  給cookie設置停止日期

  到現(xiàn)在為止,一切的cookie都是單會話cookie,即瀏覽器封閉后這些cookie將會喪失,事實上這些cookie僅僅是存儲在內(nèi)存中,而沒有樹立相應的硬盤文件。

  在實踐開發(fā)中,cookie常常需求長工夫保管,例如保管用戶登錄的狀況。這可以用下面的選項來完結(jié):

  document.cookie="userId=828; expires=GMT_String";

  其間GMT_String是以GMT格局表明的工夫字符串,這條句子就是將userId這個cookie設置為GMT_String表明的過期工夫,超越這個工夫,cookie將不見,不行拜訪。例如:若是要將cookie設置為10天后過期,可以這樣完結(jié):


  刪去cookie

  為了刪去一個cookie,可以將其過期工夫設定為一個曩昔的工夫,例如:


指定可拜訪cookie的途徑

  默許情況下,若是在某個頁面創(chuàng)立了一個cookie,那么該頁面地點目錄中的其他頁面也可以拜訪該cookie。若是這個目錄下還有子目錄,則在子目錄中也可以拜訪。例如在www.xxxx.com/html/a.html中所創(chuàng)立的cookie,可以被www.xxxx.com/html/b.html或www.xxx.com/ html/ some/c.html所拜訪,但不能被www.xxxx.com/d.html拜訪。

  為了操控cookie可以拜訪的目錄,需求運用path參數(shù)設置cookie,語法如下:
document.cookie="name=value; path=cookieDir";

  其間cookieDir表明可拜訪cookie的目錄。例如:
 document.cookie="userId=320; path=/shop";

  就表明當時cookie僅能在shop目錄下運用。

  若是要使cookie在整個網(wǎng)站下可用,可以將cookie_dir指定為根目錄,例如:

  document.cookie="userId=320; path=/";

  指定可拜訪cookie的主機名

  和途徑相似,主機名是指同一個域下的異樣主機,例如:www.google.com和gmail.google.com就是兩個異樣的主機名。默許情況下,一個主機中創(chuàng)立的cookie在另一個主機下是不能被拜訪的,但可以經(jīng)過domain參數(shù)來完結(jié)對其的操控,其語法格局為:

  document.cookie="name=value; domain=cookieDomain";

  以google為例,要完結(jié)跨主機拜訪,可以寫為:

  document.cookie="name=value;domain=.google.com";

  這樣,一切google.com下的主機都可以拜訪該cookie。

  歸納示例:結(jié)構(gòu)通用的cookie處置函數(shù)

  cookie的處置進程比較復雜,并具有必定的相似性。因而可以界說幾個函數(shù)來完結(jié)cookie的通用操作,然后完結(jié)代碼的復用。下面列出了常用的cookie操作及其函數(shù)完結(jié)。

  1.增加一個cookie:addcookie(name,value,expireHours)

  該函數(shù)接納3個參數(shù):cookie稱號,cookie值,以及在多少小時后過期。這里約好expireHours為0時不設定過期工夫,即當瀏覽器封閉時cookie主動不見。該函數(shù)完結(jié)如下:


2.獲取指定稱號的cookie值:getcookie(name)

  該函數(shù)回來稱號為name的cookie值,若是不存在則回來空,其完結(jié)如下:

 3.刪去指定稱號的cookie:deletecookie(name)

  該函數(shù)可以刪去指定稱號的cookie,其完結(jié)如下:

 也可以用另一種網(wǎng)上撒播的:

 

發(fā)布:2007-03-31 14:59    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關文章:
鷹潭OA
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普鷹潭網(wǎng)站建設公司其他應用

鷹潭軟件開發(fā)公司 鷹潭門禁系統(tǒng) 鷹潭物業(yè)管理軟件 鷹潭倉庫管理軟件 鷹潭餐飲管理軟件 鷹潭網(wǎng)站建設公司