[精讚] [會員登入]
1096

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

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

此文完整連結 http://n.sfs.tw/10319

複製連結 Javascript/Jquery 建立、讀取、刪除cookie值@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2016-11-28 12:30:40 最後編修
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

你可能感興趣的文章

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

[CKeditor4] 修改調色盤 修改ckeditor預設的調色盤

[CKeditor4] 設定區塊樣式、段落格式、字型名稱及字型大小 CKeditor4中要自訂設定區塊樣式、段落格式、字型名稱及字型大小。

[Javascript] NaN是什麼? javascript 的NaN和取得整數

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

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

[Ckeditor4] 讀、寫與插入內容到欄位 Ckeditor4 提供非常多方法,可以插入、讀取和寫入到TEXTAREA中

[jQuery] 利用load()來達成ajax的寫法 jQuery中利用load()來達成ajax的寫法,也有人稱他是假的ajax,作法就是..

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

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。請注意:留言不可帶有網址,會被濾掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

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

談借錢 人借錢時手心向上頭向下,人還錢時手心向下頭向上

[Freebsd] 定時測試 ADSL 是否斷線並重連 中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」, 使用以下的 方法可以定時測試是否斷線,以及重新撥接。

Linux shell 的date表示法 linux下SHELL中的date表示法

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?