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

相关推荐
雪隐12 小时前
用Flutter做背单词APP-04一个人,2周,从零撸出一个背单词App
前端·人工智能·后端
OpenTiny社区12 小时前
Skill 设计:封装、评测、运营,一次讲透
前端·github
大白要努力!12 小时前
uni-app 全面入门速查手册
前端·uni-app
索西引擎12 小时前
【React】虚拟 DOM:原理、机制与核心价值分析
前端·react.js·前端框架
console.log('npc')12 小时前
网页移动端UI/UX Pro Max - 设计智能skill
前端·人工智能·ui·ux
javajenius13 小时前
Masslynx 4.1安装包免费下载及详细安装教程
java·服务器·前端·其他
多加点辣也没关系13 小时前
JavaScript|第12章:属性配置与 getter/setter
javascript
gis开发之家13 小时前
《Vue3 从入门到大神29篇》单元测试与 E2E 测试 —— 保障 Vue3 项目的质量
前端·javascript·vue.js·单元测试·前端框架·vue3
爱勇宝13 小时前
AI 时代,更稀缺的是「提出好问题」还是「判断好答案」?
前端·人工智能·后端
李伟_Li慢慢13 小时前
three.js 中的WebGPU 有几成熟了?
前端·three.js