ThinkPHP---拓展之jQuery的ajax

【前言】html

     用Sublime開發時,推薦下載一個jQuery插件,能夠智能化建立基本函數格式,支持自動生成,能夠提升開發效率jquery

 

(1)jQuery裏ajax方法有幾個?ajax

        答:有4個,分別爲post、get、ajax、getJson(解決跨域時使用)json

               用來發送ajax請求的經常使用前3個get、post、ajax,下面依次介紹下跨域

(2)$.get方法緩存

         語法:jQuery.get(url,[callback],[type])或者$.get(url,[callback],[type])----------------由此看出jQuery == $,爲何呢?下面再解釋下併發

         參數說明:url必須參數,表示請求的url地址;異步

                          callback可選參數,表示請求成功後觸發的回調函數;async

                          type可選參數,指望的返回數據類型,例如json、text、html、xml、jsonb等。經常使用的是json,由於格式方便,並且PHP封裝了json內置函數函數

$.get('/path/to/file', function(data) {
        /*optional stuff to do after success */
    });

        拓展:爲何jQuery == $,這要看下jQuery源碼了。分析源碼後便可找到下面這行

         

         

(3)$.post

        語法:jquery.post(url,[data],[callback],[type])或者$.post(url,[data],[callback],[type])

        參數:url必選,表示請求的url地址;

                  data可選,表示給url傳遞的post參數;--------------------爲何get方法沒有data參數呢?由於get方法中的參數直接寫在url裏經過?的形式傳遞

                  callback:表示執行成功後的回調函數;

                  type:指望的返回數據類型

$.$.post('/path/to/file', {param1: 'value1'}, function(data, textStatus, xhr) {
        /*optional stuff to do after success */
    });

(4)$.ajax方法

         該方法是針對上面兩個方法的底層實現,即Ajax方法是jQuery裏ajax方法(get和post)的底層實現方法

         語法:$.ajax(json對象)

         參數:就一個參數,即json格式參數

         分析代碼格式能夠發現就一個json格式的參數,下面是JSON對象中的屬性說明,下面拓展裏介紹下常見屬性

      {
        url: '/path/to/file',
        type: 'default GET (Other values: POST)',
        dataType: 'default: Intelligent Guess (Other values: xml, json, script, or html)',
        data: {param1: 'value1'},
      }

          完整$.ajax結構代碼:

$.$.ajax({
        url: '/path/to/file',
        type: 'default GET (Other values: POST)',
        dataType: 'default: Intelligent Guess (Other values: xml, json, script, or html)',
        data: {param1: 'value1'},
    })
    .done(function() {
        console.log("success");
    })
    .fail(function() {
        console.log("error");
    })
    .always(function() {
        console.log("complete");
    });

(4.1)ajax的json參數的屬性說明

常見屬性:async、cache、complete、data、dataType、success、type、url

①async:ajax全稱爲Asynchronous Javascript And XML------異步 JavaScript 和 XML,因此該屬性表示是不是異步,默認是。

                對此有個問題,什麼是同步,什麼是異步?下面拓展裏作下介紹

②cache:是否使用緩存,默認是。當dataType爲jsonp或者script的時候默認否,即不使用緩存

③complete(完成):當請求執行完成時觸發的回調函數,注意:完成不必定表示成功,當狀態碼爲200時纔是成功

④data:表示傳遞的參數,參數爲json格式

⑤dataType:指望的返回數據類型,有json、xml、jsonp、html、text等

⑥success:請求出成功後觸發的回調函數

⑦type:請求類型,如get、post

⑧url:請求的地址

 

拓展:什麼是同步?什麼是異步?

          同步就是順序執行,異步就是能夠併發。舉個簡單例子,你在家吃飯的時候有人敲門,若是先作完當前動做在執行下一步就是同步執行,即吃完飯再去開門。若是在沒有作完當前事的狀況下去作下一件事,即你先放下碗去開門,而後回來再吃,這種即是異步。

相關文章
相關標籤/搜索