首頁 > web前端 > js教程 > 是否可以在外部定義 jQuery AJAX 成功回呼函數?

是否可以在外部定義 jQuery AJAX 成功回呼函數?

Barbara Streisand
發布: 2024-10-18 19:27:03
原創
1054 人瀏覽過

Is It Possible to Define jQuery AJAX Success Callback Functions Externally?

為 jQuery AJAX 定義成功回呼函數

使用 jQuery AJAX 從伺服器擷取資料時,開發人員通常在.ajax() 區塊。但是,是否可以在外部定義回調函數?

外部回調函數

提供的程式碼片段嘗試在.ajax() 之外定義成功回呼函數block:

var dataFromServer;  //declare the variable first

function getData() {
    $.ajax({
        url : 'example.com',
        type: 'GET',
        success : handleData(dataFromServer)
    })
}

function handleData(data) {
    alert(data);
    //do some stuff
}
登入後複製

建議:使用延遲物件

雖然程式碼片段在技術上可能有效,但不再建議在.ajax 之外定義成功回調() 堵塞。相反,使用延遲物件:

function getData() {
    return $.ajax({
        url : 'example.com',
        type: 'GET'
    });
}

function handleData(data /* , textStatus, jqXHR */ ) {
    alert(data);
    //do some stuff
}

getData().done(handleData);
登入後複製

延遲物件提供了幾個優點:

  • 解耦:它們將回調處理與AJAX 處理分開,從而更容易維護.
  • 多個回調:延遲物件支援新增多個成功和錯誤回調。
  • 同步:它們可以輕鬆同步多個非同步事件,例如作為 AJAX 呼叫和計時器。

使用延遲物件可以提供更大的靈活性和對 AJAX 回呼處理的控制,使其成為更強大和更現代的方法。

以上是是否可以在外部定義 jQuery AJAX 成功回呼函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板