django系列6--Ajax03 ajax參數

ajax的參數

data:

當前ajax請求要攜帶的數據,是一個json的object對象,ajax方法會默認的把它編碼成某種格式javascript

(urlencoded:?a=1&b=2)發送給服務端;此外,ajax默認以get方式發送請求html

function testData() {
               $.ajax("/test",{     //此時的data是一個json形式的對象
                  data:{
                    a:1,
                    b:2
                  }
               });

<br/>java

processData:

默認值爲true, 默認狀況下,經過data選項傳遞進來的數據,若是是一個對象(技術上講只要不是字符串),都會處理轉化成一個查詢字符串,以配合默認內容類型 "application/x-www-form-urlencoded"。若是要發送 DOM 樹信息或其它不但願轉換的信息,請設置爲 falseajax

聲明當前的data數據是否進行轉碼或預處理, , 即預處理. 若是爲true,對data:{a:1,b:2}會調用json對象的toString()方法,即{a:1,b:2}.toString() ,最後獲得一個[object,Object]形式的結果。json

<br/>數組

contentType:

默認值爲"application/x-www-form-urlencoded"服務器

發送信息至服務器時內容編碼類型。用來指明當前請求的數據編碼格式;urlencoded:?a=1&b=2;若是想以其餘方式提交數據,好比contentType:"application/json",即向服務器發送一個json字符串:app

$.ajax("/ajax_get",{
             
                  data:JSON.stringify({
                       a:22,
                       b:33
                   }),
                   contentType:"application/json",
                   type:"POST",
             
               });                          //{a: 22, b: 33}

contentType:"application/json"一旦設定,data必須是json字符串,不能是json對象函數

views.py: json.loads(request.body.decode("utf8"))編碼

<br/>

traditional

通常是咱們的data數據有數組時會用到 :data:{a:22,b:33,c:["x","y"]}, traditional爲false會對數據進行深層次迭代;

<br/>

dataType:

預期服務器返回的數據類型,服務器端返回的數據會根據這個值解析後,傳遞給回調函數。默認不須要顯性指定這個屬性,ajax會根據服務器返回的content Type來進行轉換;好比咱們的服務器響應的content Type爲json格式,這時ajax方法就會對響應的內容 進行一個json格式的轉換,if轉換成功,咱們在success的回調函數裏就會獲得一個json格式的對象;轉換失敗就會觸發error這個回調函數。若是咱們明確地指定目標類型,就能夠使用 data Type。

dataType的可用值:html|xml|json|text|script

相關文章
相關標籤/搜索