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

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

每個(gè)cookie都是一個(gè)名/值對

申請免費(fèi)試用、咨詢電話:400-8352-114

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

設(shè)置cookie

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

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

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

  相當(dāng)于:
 document.cookie="str=I%20love%20ajax";

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

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

  document.cookie="userName=hulk";

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

  document.addcookie("userName=hulk");

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

  這樣就將名為userId的cookie值設(shè)置為了929。

  獲取cookie的值

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

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


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

  這樣就得到了單個(gè)cookie的值

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

  給cookie設(shè)置停止日期

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

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

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

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


  刪去cookie

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


指定可拜訪cookie的途徑

  默許情況下,若是在某個(gè)頁面創(chuàng)立了一個(gè)cookie,那么該頁面地點(diǎn)目錄中的其他頁面也可以拜訪該cookie。若是這個(gè)目錄下還有子目錄,則在子目錄中也可以拜訪。例如在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可以拜訪的目錄,需求運(yùn)用path參數(shù)設(shè)置cookie,語法如下:
document.cookie="name=value; path=cookieDir";

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

  就表明當(dāng)時(shí)cookie僅能在shop目錄下運(yùn)用。

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

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

  指定可拜訪cookie的主機(jī)名

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

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

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

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

  這樣,一切g(shù)oogle.com下的主機(jī)都可以拜訪該cookie。

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

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

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

  該函數(shù)接納3個(gè)參數(shù):cookie稱號,cookie值,以及在多少小時(shí)后過期。這里約好expireHours為0時(shí)不設(shè)定過期工夫,即當(dāng)瀏覽器封閉時(shí)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    [打印此頁]    [關(guān)閉]
相關(guān)文章:
鷹潭OA
聯(lián)系方式

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

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

咨詢:400-8352-114

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

QQ在線咨詢

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

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