07: jquery.cookie操做cookie

1.1 jquery.cookie經常使用方法

   定義:讓網站服務器把少許數據儲存到客戶端的硬盤或內存,從客戶端的硬盤讀取數據的一種技術html

  1. 添加一個"會話cookie"前端

      $.cookie('the_cookie', 'the_value');jquery

    說明: 這裏沒有指明 cookie有效時間,所建立的cookie有效期默認到用戶關閉瀏覽器爲止,因此被稱爲 「會話cookie(session cookie)」。
django

   2.建立一個cookie並設置有效時間爲 7天瀏覽器

      $.cookie('the_cookie', 'the_value', { expires: 7 });安全

   3.建立一個cookie並設置 cookie的有效路徑服務器

      $.cookie('the_cookie', 'the_value', { expires: 7, path: '/' });cookie

      1) 在默認狀況下,只有設置 cookie的網頁才能讀取該 cookie。session

      2)若是想讓一個頁面讀取另外一個頁面設置的cookie,必須設置cookie的路徑。app

      3)cookie的路徑用於設置可以讀取 cookie的頂級目錄。將這個路徑設置爲網站的根目錄,能夠讓全部網頁都能互相讀取 cookie 

  4.讀取cookie

      $.cookie('the_cookie');

  5.刪除cookie

      $.cookie('the_cookie', null);          //經過傳遞null做爲cookie的值便可

  6.可選參數

      $.cookie('the_cookie','the_value',{
        expires:7,                                    // 有效期;設置一個整數時,單位是天;也能夠設置一個日期對象做爲Cookie的過時日期;
        path:'/',                                       // (String)建立該Cookie的頁面路徑;
        domain:'jquery.com',                   // (String)建立該Cookie的頁面域名;
        secure:true                                 //  若是設爲true,那麼此Cookie的傳輸會要求一個安全協議,例如:HTTPS;
      }) 

 1.2 在Django項目中,前端設置、獲取cookie演示

from app01 import views
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
    url(r'^get_ck/', views.get_ck),
]
urls.py
from django.shortcuts import render,HttpResponse

def index(request):
    return render(request, 'index.html', )

def get_ck(request):
    val = request.COOKIES.get('per_page_count')
    print('get_ck',val)
    return HttpResponse(val)
/app01/views.py
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    {# 選擇每頁顯示多少條的select單選框 #}
    <div>
        <select id="ps" onchange="changePageSize(this)">
            <option value="10">10</option>
            <option value="20">20</option>
            <option value="50">50</option>
            <option value="100">100</option>
        </select>
    </div>

    <script src="/static/jquery-1.12.4.js"></script>
    <script src="/static/jquery.cookie.js"></script>

    <script>
        //當框架加載完成後獲取cookie的值,並設置到select中
        $(function(){
           var v = $.cookie('per_page_count');     //前端獲取cookie值
            console.log(v);
            $('#ps').val(v);
        });

        function changePageSize(ths){
            //獲取select單選框選擇的值(10,20,50,100)這些選項
            var v = $(ths).val();
            //使用cookie將v的值傳遞到後臺
            $.cookie('per_page_count',v, { expires: 7 });        //前端設置cookie值
            $.cookie('per_page_count',v, {'path':'/'});       // 將這個路徑設置爲網站的根目錄
        }
    </script>
</body>
</html>
index.html
相關文章
相關標籤/搜索