AJAX 安装使用教程

一、AJAX 简介

AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够与服务器交换数据并更新部分网页内容的技术。它不是一种新语言,而是使用现有的标准组合:JavaScript + XMLHttpRequest(或 Fetch)+ HTML + CSS。


二、AJAX 是否需要安装?

不需要单独安装!

AJAX 是浏览器原生支持的技术,主流浏览器均内置 XMLHttpRequest 和 Fetch API,开发者可以直接使用。


三、使用方式

3.1 使用 XMLHttpRequest(传统方式)

html 复制代码
<button onclick="loadData()">加载数据</button>
<div id="result"></div>

<script>
  function loadData() {
    var xhr = new XMLHttpRequest();
    xhr.open("GET", "data.json", true);
    xhr.onreadystatechange = function () {
      if (xhr.readyState === 4 && xhr.status === 200) {
        document.getElementById("result").innerHTML = xhr.responseText;
      }
    };
    xhr.send();
  }
</script>

3.2 使用 Fetch API(现代方式)

html 复制代码
<button onclick="loadData()">加载数据</button>
<div id="result"></div>

<script>
  function loadData() {
    fetch('data.json')
      .then(response => response.json())
      .then(data => {
        document.getElementById('result').innerHTML = JSON.stringify(data);
      })
      .catch(error => console.error('请求失败', error));
  }
</script>

3.3 使用 jQuery 的 $.ajax(简化方式)

需引入 jQuery 库:

html 复制代码
<script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>

使用示例:

html 复制代码
<script>
  $.ajax({
    url: "data.json",
    method: "GET",
    success: function(data) {
      console.log("响应数据:", data);
    },
    error: function() {
      alert("请求失败");
    }
  });
</script>

四、AJAX 请求类型

类型 描述
GET 请求数据
POST 提交数据
PUT 更新数据(REST)
DELETE 删除数据(REST)

示例 POST 请求:

js 复制代码
fetch("/api/login", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ username: "user", password: "pass" })
})
  .then(res => res.json())
  .then(data => console.log(data));

五、常见用途

  • 表单提交
  • 动态加载分页数据
  • 自动补全输入
  • 无刷新评论系统
  • 动态刷新内容区域(如天气、新闻)

六、常见问题

Q1: 跨域请求失败?

需服务端支持 CORS(设置响应头):

http 复制代码
Access-Control-Allow-Origin: *

Q2: 请求成功但页面无反应?

检查:

  • DOM 元素是否正确获取
  • 请求路径是否正确
  • 数据格式是否解析成功(如 JSON)

七、学习资源推荐


本文由"小奇Java面试"原创发布,转载请注明出处。

可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

相关推荐
ywf12151 天前
前端的dist包放到后端springboot项目下一起打包
前端·spring boot·后端
恋猫de小郭1 天前
2026,Android Compose 终于支持 Hot Reload 了,但是收费
android·前端·flutter
hpoenixf1 天前
2026 年前端面试问什么
前端·面试
还是大剑师兰特1 天前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
泯泷1 天前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
mengchanmian1 天前
前端node常用配置
前端
华洛1 天前
利好打工人,openclaw不是企业提效工具,而是个人助理
前端·javascript·产品经理
xkxnq1 天前
第六阶段:Vue生态高级整合与优化(第93天)Element Plus进阶:自定义主题(变量覆盖)+ 全局配置与组件按需加载优化
前端·javascript·vue.js
A黄俊辉A1 天前
vue css中 :global的使用
前端·javascript·vue.js
小码哥_常1 天前
被EdgeToEdge适配折磨疯了,谁懂!
前端