JQ 的 AJAX 请求方法

$.ajax() 基础方法

$.ajax() 是 jQuery 中最底层的 AJAX 实现,支持高度自定义配置:

javascript 复制代码
$.ajax({
  url: "https://api.example.com/data",
  type: "GET", // 或 "POST"
  dataType: "json", // 预期返回的数据类型
  data: { key1: "value1", key2: "value2" }, // 发送的数据
  success: function(response) {
    console.log("请求成功:", response);
  },
  error: function(xhr, status, error) {
    console.error("请求失败:", status, error);
  }
});

快捷方法

jQuery 提供了更简洁的快捷方法:

GET 请求

javascript 复制代码
$.get("https://api.example.com/data", { param1: "value1" }, function(response) {
  console.log("GET 响应:", response);
}, "json");

POST 请求

javascript 复制代码
$.post("https://api.example.com/submit", { name: "John", age: 30 }, function(response) {
  console.log("POST 响应:", response);
});

加载 HTML 片段

javascript 复制代码
$("#result").load("partial.html #content"); // 加载指定元素的片段

处理 JSON 数据

获取 JSON 数据

javascript 复制代码
$.getJSON("https://api.example.com/users", function(data) {
  $.each(data, function(index, user) {
    console.log(user.name);
  });
});

提交 JSON 数据

javascript 复制代码
$.ajax({
  url: "https://api.example.com/save",
  type: "POST",
  contentType: "application/json",
  data: JSON.stringify({ id: 1, name: "Alice" }),
  success: function(response) {
    console.log("保存成功");
  }
});
全局事件处理

jQuery 允许绑定全局 AJAX 事件:

javascript 复制代码
$(document).ajaxStart(function() {
  $("#loading").show();
}).ajaxStop(function() {
  $("#loading").hide();
});
跨域请求 (CORS)

对于跨域请求,确保服务器支持 CORS:

javascript 复制代码
$.ajax({
  url: "https://other-domain.com/api",
  crossDomain: true,
  xhrFields: {
    withCredentials: true // 需要时发送凭据
  }
});

使用 Promises

jQuery AJAX 返回的是 jqXHR 对象,支持 Promise 语法:

javascript 复制代码
$.get("https://api.example.com/data")
  .done(function(data) {
    console.log("成功:", data);
  })
  .fail(function(xhr, status) {
    console.error("失败:", status);
  });
相关推荐
李白的天不白2 小时前
SSR服务端渲染
前端
卷帘依旧3 小时前
SSE(Server-Sent Events)完全指南
前端
码云之上3 小时前
万星入坞:我们如何用三层插件体系干掉巨石应用
前端·架构·前端框架
kyriewen3 小时前
一口气讲清楚 Monorepo、Turborepo、pnpm、Changesets 到底是什么?
前端·架构·前端工程化
IT_陈寒4 小时前
React性能优化踩的坑,这个错你可能也会犯
前端·人工智能·后端
zhangxingchao4 小时前
AI应用开发三:RAG技术与应用
前端·人工智能·后端
摘星小杨4 小时前
如何在前端循环调取接口,实时查询数据
开发语言·前端·javascript
Hilaku4 小时前
从搜索排名到 AI 回答? 先聊一聊 AI 可见度工具 BuildSOM !
前端·javascript·程序员
zzmgc44 小时前
纯静态 + Web Worker + 虚拟滚动:我是怎么让浏览器吃下 10MB JSON 不卡的
前端·架构
辰同学ovo4 小时前
用 Chrome DevTools MCP 给 AI 写的页面做“质检“
前端·人工智能·chrome devtools