[精讚] [會員登入]
10212

Javascript/Jquery 建立、讀取、刪除cookie值

Javascript/Jquery 建立、讀取、刪除cookie值

分享此文連結 //n.sfs.tw/10319

分享連結 Javascript/Jquery 建立、讀取、刪除cookie值@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 12:48:47 最後編修
2016-11-28 12:30:20 By 張○○
 

自動目錄

[JQuery]

原本HTML要建立C、讀取R、刪除D、cookie我都使用別人寫的jquery 插件COOKIE plugin[1],使用上就簡化很多:

建立

$.cookie("example", "foo"); // Sample 1
$.cookie("example", "foo", { expires: 7 }); // Sample 2
$.cookie("example", "foo", { path: '/admin', expires: 7 }); // Sample 3

取得/刪除

alert( $.cookie("example") );
$.removeCookie("example");

缺點是這得架構在jquery,而且得引入一個插件,對於有時不想用jq的我造成困擾,的確jq是很方便啦,但是jq會一直升級有時只想單純的建立讀取,不想那一大包jq,所以使用javascript 的方法來解決。

[JavaScript]

// 建立cookie
function createCookie(name, value, days, path) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
    var expires = "; expires=" + date.toGMTString();
  }
  else var expires = "";
  document.cookie = name + "=" + value + expires + "; path=/";
}
//讀取
function readCookie(name) {
   var nameEQ = name + "=";
   var ca = document.cookie.split(';');
   for (var i = 0; i < ca.length; i++) {
      var c = ca[i];
      while (c.charAt(0) == ' ') c = c.substring(1, c.length);
      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
   }
   return null;
}
//刪除
function eraseCookie(name) {
   createCookie(name, "", -1);
}

使用範例:
讀取
   ds= readCookie('showadv');

建立(有效3日)
  var ds="some value";
  createCookie('showadv', ds, 3);

刪除(等於建立一個逾期的cookie)
  eraseCookie('showadv');

參考資料

[1] http://stackoverflow.com/questions/1599287/create-read-and-erase-cookies-with-jquery

END

你可能感興趣的文章

[Bootstrap] Datepicker使用/Bootstrap日期選日期選擇器的使用 Bootstrap日期選日期選擇器的使用

[Jquery] 複選的checkbox取值 遇到複選的checkbox該如何取值?

[Javascript] 陣列、陣列的操作 Javascript 的陣列操作:宣告、取值、賦值、插入或移除項目,檢查KEY、檢查是否為陣列等等

[Javascript] 偵錯方式 (火狐中的javascript偵錯) javascript 並不是很容易偵錯(debug)的語言,但那是以前,現在有很多瀏覽器支持很多的工具,此文以火狐為例談談偵錯...

[jQuery] checkbox 及 radio 設定值 jQuery 之 checkbox 及 radio 取值及設定值的方法

[Javascript/Jquery] 移除textarea中空行、空白行。 textarea中要移除沒內容的空行、只有空白的行、只有定位字元的行

隨機好文

為什麼要買長達二十年的保單? 為什麼要買長達二十年的保單?找一個可以說服我買二十年保單的理由。

如何在linux下執行java 原生的java應用程式可以使用簡單的方法在console下面寫出來,適合作簡單的應用

[Win7] 燒錄 iso 檔 在Windows7 中內建燒錄程式,可以直接把檔案拉到光碟機裡,再執行燒錄。

[Wildfly10] 發佈war檔 deploy war file onto wildfly10

此一時彼一時 我是不是易怒的人,其實我也不知道,總之我常會失控,不知道自己在幹嘛。這近生活過得浮浮的,不是很踏實,總會想太多,我甚至會