ajax样式演示

以下是一段Ajax的演示代码,实现了通过Ajax获取后台数据并将其显示到前台页面上。

HTML文件:

html 复制代码
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Ajax演示</title>
  </head>
  <body>
    <h1>学生信息表</h1>
    <table id="result">
      <thead>
        <tr>
          <th>ID</th>
          <th>姓名</th>
          <th>年龄</th>
          <th>地址</th>
        </tr>
      </thead>
      <tbody>
        <!-- 数据填充位置 -->
      </tbody>
    </table>
    <button onclick="loadData()">加载数据</button>
  </body>
  <script src="./js/ajax.js"></script>
</html>

JavaScript文件:

javascript 复制代码
function loadData() {
  // 创建一个XMLHttpRequest对象
  var xhr = new XMLHttpRequest();
  // 设置请求地址和请求方法
  xhr.open("GET", "/api/students", true);
  // 注册回调函数
  xhr.onreadystatechange = function() {
    if (xhr.readyState === XMLHttpRequest.DONE) {
      if (xhr.status === 200) {
        // 请求成功,解析响应数据
        var json = JSON.parse(xhr.responseText);
        // 获取表格数据填充位置
        var tbody = document.querySelector("#result tbody");
        // 清空表格内容
        tbody.innerHTML = "";
        // 遍历响应数据,生成表格内容
        for (var i = 0; i < json.length; i++) {
          var tr = document.createElement("tr");
          tr.innerHTML = "<td>" + json[i].id + "</td><td>" + json[i].name + "</td><td>" + json[i].age + "</td><td>" + json[i].address + "</td>";
          tbody.appendChild(tr);
        }
      } else {
        // 请求失败,提示错误信息
        alert("请求数据失败:" + xhr.status);
      }
    }
  };
  // 发送Ajax请求
  xhr.send();
}

运行以上代码,点击"加载数据"按钮,页面会通过Ajax向后台请求学生数据,并将其显示在表格中。该代码中,通过XMLHttpRequest对象向后台发起GET请求,获取学生数据。当请求完成后,根据响应状态码和响应数据进行相应处理。如果请求成功,则解析响应数据,生成表格内容;否则,提示错误信息。

相关推荐
Harriet嘉17 分钟前
解决Chrome 140以上版本“此扩展程序不再受支持,因此已停用”问题 axure插件安装问题
前端·chrome
FuckPatience23 分钟前
前端Vue 后端ASP.NET Core WebApi 本地调试交互过程
前端·vue.js·asp.net
Kingsdesigner27 分钟前
从平面到“货架”:Illustrator与Substance Stager的包装设计可视化工作流
前端·平面·illustrator·设计师·substance 3d·平面设计·产品渲染
一枚前端小能手37 分钟前
🔍 那些不为人知但是好用的JS小秘密
前端·javascript
屿小夏39 分钟前
JSAR 开发环境配置与项目初始化全流程指南
前端
微辣而已40 分钟前
next.js中实现缓存
前端
Dcc1 小时前
纯 css 实现前端主题切换+自定义方案
前端·css
Zuckjet_1 小时前
第 7 篇:交互的乐趣 - 响应用户输入
前端·javascript·webgl
我总是词不达意1 小时前
vue3 + el-upload组件集成阿里云视频点播从本地上传至点播存储
前端·vue.js·阿里云·elementui
用户481178812871 小时前
求大佬解惑:高度与宽度百分比设置问题
前端