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面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

相关推荐
程序员清洒13 小时前
Flutter for OpenHarmony:Text — 文本显示与样式控制
开发语言·javascript·flutter
雨季66613 小时前
Flutter 三端应用实战:OpenHarmony 简易“动态内边距调节器”交互模式深度解析
javascript·flutter·ui·交互·dart
天人合一peng14 小时前
Unity中button 和toggle监听事件函数有无参数
前端·unity·游戏引擎
会飞的战斗鸡14 小时前
JS中的链表(含leetcode例题)
javascript·leetcode·链表
方也_arkling14 小时前
别名路径联想提示。@/统一文件路径的配置
前端·javascript
毕设源码-朱学姐14 小时前
【开题答辩全过程】以 基于web教师继续教育系统的设计与实现为例,包含答辩的问题和答案
前端
qq_1777673715 小时前
React Native鸿蒙跨平台剧集管理应用实现,包含主应用组件、剧集列表、分类筛选、搜索排序等功能模块
javascript·react native·react.js·交互·harmonyos
qq_1777673715 小时前
React Native鸿蒙跨平台自定义复选框组件,通过样式数组实现选中/未选中状态的样式切换,使用链式调用替代样式数组,实现状态驱动的样式变化
javascript·react native·react.js·架构·ecmascript·harmonyos·媒体
web打印社区15 小时前
web-print-pdf:突破浏览器限制,实现专业级Web静默打印
前端·javascript·vue.js·electron·html
RFCEO15 小时前
前端编程 课程十三、:CSS核心基础1:CSS选择器
前端·css·css基础选择器详细教程·css类选择器使用方法·css类选择器命名规范·css后代选择器·精准选中嵌套元素