AJAX 简介
AJAX 是开发者的梦想,因为它可以
- 从网页服务器读取数据 - 在页面加载后
- 更新网页,而无需重新加载页面
- 将数据发送到网页服务器 - 在后台
AJAX 示例解释
HTML 页面
<!DOCTYPE html>
<html>
<body>
<div id="demo">
<h2>让 AJAX 更改此文本</h2>
<button type="button" onclick="loadDoc()">更改内容</button>
</div>
</body>
</html>
HTML 页面包含一个 <div> 部分和一个 <button>。
<div> 部分用于显示来自服务器的信息。
<button> 调用一个函数(如果它被点击)。
该函数从网页服务器请求数据并显示它
函数 loadDoc()
function loadDoc() {
const xhttp = new XMLHttpRequest();
xhttp.onload = function() {
document.getElementById("demo").innerHTML = this.responseText;
}
xhttp.open("GET", "ajax_info.txt", true);
xhttp.send();
}
什么是 AJAX?
AJAX = Asynchronous JavaScript And XML。
AJAX 不是编程语言。
AJAX 只是使用以下组合
- 浏览器内置的
XMLHttpRequest
对象(用于从网页服务器请求数据) - JavaScript 和 HTML DOM(用于显示或使用数据)
AJAX 是一个误导性的名称。AJAX 应用可能使用 XML 传输数据,但作为纯文本或 JSON 文本传输数据也同样常见。
AJAX 允许网页通过在后台与网页服务器交换数据来异步更新。这意味着可以更新网页的某些部分,而无需重新加载整个页面。
AJAX 工作原理
- 1. 网页中发生一个事件(页面加载,按钮被点击)
- 2. JavaScript 创建一个 XMLHttpRequest 对象
- 3. XMLHttpRequest 对象向网页服务器发送请求
- 4. 服务器处理请求
- 5. 服务器将响应发送回网页
- 6. 响应由 JavaScript 读取
- 7. 由 JavaScript 执行适当的操作(如页面更新)。
现代浏览器(Fetch API)
现代浏览器可以使用 Fetch API 代替 XMLHttpRequest 对象。
Fetch API 接口允许 Web 浏览器向 Web 服务器发出 HTTP 请求。
如果你使用 XMLHttpRequest 对象,Fetch 可以用更简单的方式做到同样的事情。