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

相关推荐
橙光成长34 分钟前
PDF离线工具箱深度解析:4MB纯前端单文件,40+功能全本地运行,文件绝不上传
前端·pdf·1024程序员节
小poop7 小时前
CSS 基础与实战:从入门到精通网页美化
前端
Csvn9 小时前
运行时性能
前端
Never_every999 小时前
位图转矢量工具哪个好?实测抠抠图AI位图转矢量工具
大数据·前端
paopaokaka_luck10 小时前
宠物门店经营管理系统(销售与库存联动、进货自动记账、 退换与退款关联、员工个人业绩、ECharts 经营分析、滞销识别与客户分层、宠物档案年龄计算)
前端·javascript·spring boot·mysql·echarts·mybatis·1024程序员节
空中湖10 小时前
用 React 写数据大屏:为什么我不建议用图表库
前端·react.js·前端框架
欣欣之王来了12 小时前
原始HTML插值:v-html指令的使用与安全风险
前端·学习·架构·项目·vue3教程
IT_陈寒12 小时前
Redis的LRU淘汰策略坑了我一整天
前端·人工智能·后端
计算机魔术师12 小时前
砍半价格、参数再涨,国产旗舰追到 Opus 鼻尖了
前端
特立独行的猫A12 小时前
10 MB 的桌面 AI 客户端:用仓颉 + 系统 WebView 替代 Electron
前端·harmonyos