Web:使用ajax实现一个较为复杂页面部分更新,写出完整的html代码
时间: 2024-02-25 15:54:36 浏览: 129
好的,以下是一个使用 Ajax 实现较为复杂页面部分更新的完整 HTML 代码示例:
```html
<!DOCTYPE html>
<html>
<head>
<title>Ajax Demo</title>
<script>
function updateContent() {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var data = JSON.parse(this.responseText);
var posts = data.posts;
var users = data.users;
var postList = document.getElementById("post-list");
postList.innerHTML = "";
for (var i = 0; i < posts.length; i++) {
var post = posts[i];
var user = users[post.userId];
var postItem = document.createElement("div");
postItem.className = "post-item";
var title = document.createElement("h2");
title.innerHTML = post.title;
var author = document.createElement("p");
author.innerHTML = "作者:" + user.name;
var content = document.createElement("p");
content.innerHTML = post.body;
postItem.appendChild(title);
postItem.appendChild(author);
postItem.appendChild(content);
postList.appendChild(postItem);
}
}
};
xmlhttp.open("GET", "data.php", true);
xmlhttp.send();
}
</script>
<style>
.post-item {
margin-bottom: 20px;
padding: 10px;
border: 1px solid #ccc;
border-radius: 5px;
}
h2 {
margin-top: 0;
margin-bottom: 5px;
}
p {
margin-top: 0;
margin-bottom: 10px;
}
</style>
</head>
<body>
<h1>Ajax Demo</h1>
<p>点击下面的按钮,使用 Ajax 获取数据并更新页面</p>
<button onclick="updateContent()">更新内容</button>
<div id="post-list">
<!-- 初始内容为空 -->
</div>
</body>
</html>
```
在上面的代码中,当点击 "更新内容" 按钮时,会使用 Ajax 发送 GET 请求到 "data.php" URL,获取数据并更新页面中 id 为 "post-list" 的元素。数据返回的格式为 JSON,包含两个部分:posts 和 users。通过遍历 posts 和 users,创建相应的 HTML 元素并更新到页面中。
在实际应用中,需要根据具体需求修改 URL 和数据处理方式,并根据页面布局和样式修改 HTML 和 CSS。
阅读全文