一、AJAX 简介
AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够与服务器交换数据并更新部分网页内容的技术。它不是一种新语言,而是使用现有的标准组合:JavaScript + XMLHttpRequest(或 Fetch)+ HTML + CSS。
二、AJAX 是否需要安装?
不需要单独安装!
AJAX 是浏览器原生支持的技术,主流浏览器均内置 XMLHttpRequest 和 Fetch API,开发者可以直接使用。
三、使用方式
3.1 使用 XMLHttpRequest(传统方式)
<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(现代方式)
<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 库:
<script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
使用示例:
<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 请求:
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(设置响应头):
Access-Control-Allow-Origin: *
Q2: 请求成功但页面无反应?
检查:
- DOM 元素是否正确获取
- 请求路径是否正确
- 数据格式是否解析成功(如 JSON)
七、学习资源推荐
- MDN AJAX 教程
- w3schools AJAX 教程
- jQuery AJAX 文档
本文由“小奇Java面试”原创发布,转载请注明出处。
可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。