首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

jQuery AJAX 事件呼叫順序完整解析:全域與區域事件執行流程

     編輯:PHP 綜合知識

標準 AJAX 請求範例

<?php
$.ajax({
    type: "GET",
    dataType: "html",
    url: "index.html",
    error: function(msg) { alert("error"); },
    complete: function(msg) { alert("complete"); },
    success: function(msg) { alert("success"); }
});
?>

事件執行順序 (成功情況)

  1. ajaxStart (全域) - 首個 AJAX 請求開始
  2. beforeSend (區域) - 發送前,可修改 jqXHR、取消請求
  3. ajaxSend (全域) - 發送前全域事件
  4. success (區域) - 成功回調
  5. ajaxSuccess (全域) - 成功全域事件
  6. complete (區域) - 完成回調 (成功/失敗皆執行)
  7. ajaxComplete (全域) - 完成全域事件
  8. ajaxStop (全域) - 所有 AJAX 請求結束

事件執行順序 (失敗情況)

  1. ajaxStart (全域)
  2. beforeSend (區域)
  3. ajaxSend (全域)
  4. error (區域) - 失敗回調
  5. ajaxError (全域) - 失敗全域事件
  6. complete (區域)
  7. ajaxComplete (全域)
  8. ajaxStop (全域)

全域 vs 區域事件對照

階段區域事件 (個別請求)全域事件 (所有請求)
開始beforeSendajaxStart / ajaxSend
成功successajaxSuccess
失敗errorajaxError
完成completeajaxComplete
結束-ajaxStop

實務應用場景

  • 全域事件:Loading 指示器、統一錯誤處理、權限攔截、請求計數
  • 區域事件:業務邏輯處理、資料渲染、表單驗證回饋

控制全域事件觸發

$.ajax({
    global: false,  // 停用此請求的全域事件
    // ...
});

// 或全域關閉
$.ajaxSetup({ global: false });
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved