Ajax(Asynchronous JavaScript And XML)即异步JavaScript和XML技术,通过在后台与服务器交换数据并更新部分网页实现页面无刷新的异步更新。
JavaWeb之Ajax的基本使用与实战案例
Ajax(Asynchronous JavaScript And XML)即异步JavaScript和XML技术,通过在后台与服务器交换数据并更新部分网页实现页面无刷新的异步更新。
Ajax的基本语法
使用Ajax时可以通过XMLHttpRequest对象与后台进行数据交互,其中涉及到的基本语法如下:
// 创建XMLHttpRequest对象
var xhr = new XMLHttpRequest();
// 设置请求方式、请求地址以及是否异步
xhr.open("GET", "url", true);
// 发送请求
xhr.send();
// 监听请求的状态
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
// 处理请求的结果
var response = xhr.responseText;
console.log(response);
}
}
Ajax的实战案例
示例一:异步加载数据
下面是一个简单的异步加载数据的实例,通过点击按钮触发Ajax请求并在页面上显示返回的数据。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ajax示例1</title>
</head>
<body>
<button id="btn">异步加载数据</button>
<p id="content"></p>
<script>
// 获取按钮和内容区域DOM元素
var btn = document.querySelector("#btn");
var content = document.querySelector("#content");
// 添加点击事件监听
btn.addEventListener("click", function() {
// 创建XMLHttpRequest对象
var xhr = new XMLHttpRequest();
// 设置请求方式、请求地址以及是否异步
xhr.open("GET", "data.php", true);
// 发送请求
xhr.send();
// 监听请求的状态
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
// 处理请求的结果,将结果放入内容区域
content.innerText = xhr.responseText;
}
}
});
</script>
</body>
</html>
示例二:异步提交表单
下面是一个异步提交表单的实例,通过按钮触发Ajax请求将表单数据提交到后台,并在页面上显示返回的结果。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ajax示例2</title>
</head>
<body>
<form id="myForm">
<label>用户名:</label><input type="text" name="username"><br>
<label>密码:</label><input type="password" name="password"><br>
<button id="btn" type="button">提交</button>
</form>
<p id="result"></p>
<script>
// 获取表单和按钮DOM元素
var form = document.querySelector("#myForm");
var btn = document.querySelector("#btn");
var result = document.querySelector("#result");
// 添加点击事件监听
btn.addEventListener("click", function() {
// 创建XMLHttpRequest对象
var xhr = new XMLHttpRequest();
// 设置请求方式、请求地址以及是否异步
xhr.open("POST", "submit.php", true);
// 设置请求头
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
// 获取表单数据
var formData = new FormData(form);
// 发送请求
xhr.send(formData);
// 监听请求的状态
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
// 处理请求的结果,将结果放入结果区域
result.innerText = xhr.responseText;
}
}
});
</script>
</body>
</html>
以上两个示例仅是Ajax的基本使用,实际应用Ajax还需要结合后台开发技术进行更加复杂的数据处理和交互。
沃梦达教程
本文标题为:JavaWeb之Ajax的基本使用与实战案例
猜你喜欢
- IDEA错误:找不到或无法加载主类的完美解决方法 2023-03-15
- SpringBoot详解整合MyBatis过程中可能遇到的问题 2023-02-11
- Java中的StackOverflowError错误问题及解决方法 2023-02-27
- Mybatis详细对比一级缓存与二级缓存 2023-06-10
- SpringBoot错误处理流程深入详解 2023-06-06
- Spring详解四种加载配置项的方法 2023-01-24
- SpringBoot浅析安全管理之Spring Security配置 2023-04-12
- 利用java和sqlserver建立简易图书管理系统的完整步骤 2023-01-02
- lombok 子类中如何使用@Builder问题 2023-05-24
- springboot整合xxl-job的示例代码 2023-01-29