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