前言 本次练习没有使用前端框架,默认以表格方式拼接渲染数据,后端数据返回没有采用规范的数据形式返回
默认你能用springboot-mybatis从后端获取到数据
spring boot 静态资源处理

在application.prepeties加上

spring .mvc.static-path-pattern=/static/**

增加学生记录

  • 利用jquery获取用户输入学生的信息
    let studentNo = $("#studentNo").val()let name = $("#studentName").val()let age = parseInt($("#studentAge").val())let sex = $("#studentSex").find("option:selected").val()let data = {"studentNo":studentNo,"name":name,"age":age,"sex":sex}
  • 利用ajax传递新增学生信息给后端,后端返回结果为受影响的行数
$.ajax({url: '/student/add',type: 'POST',dataType: 'json',data:data}).done(function (dat) {console.log(dat)if ( dat === 1 ) {alert('添加成功');location.reload();}}).fail(function () {alert('服务器超时,请重试!');});

删除学生记录

  • 获取当前行学生记录的学号
// 由于数据的拼接形成的表格,故获取学号则采用获取当前行表格的第几列数据// 获取删除按钮的父节点父节点,即tr标签
let tr1 = obj.parentNode.parentNode
// 获取tr
let id = tr1.cells[0].innerText
  • 传递学号到后端进行删除操作,返回受影响的行数
$.ajax({url: '/student/delete',type: 'DELETE',dataType:'json',data:{"id":id}}).done(function (dat) {console.log(dat)alert("删除成功!")location.reload();}).fail(function () {alert('服务器超时,请重试!');});

更新学生记录

  • 对于待更新学生记录,采用获取当前行数据的方式对待更新框进行赋值
var tr1 = obj.parentNode.parentNode$("#studentNoU").attr("value",tr1.cells[0].innerText)$("#studentNameU").attr("value",tr1.cells[1].innerText)$("#studentAgeU").attr("value",tr1.cells[2].innerText)document.getElementById("studentSexU").value= tr1.cells[3].innerText;//对于学号 采用可读不可编辑方式 在id = "studentNo"标签那添加如下属性
readonly="true"
  • 获取更新框的数据
let studentNo = $("#studentNoU").val()let name = $("#studentNameU").val()let age = parseInt($("#studentAgeU").val())let sex = $("#studentSexU").find("option:selected").val()let data = {"studentNo":studentNo,"name":name,"age":age,"sex":sex}
  • 传递更新的数据到后端进行更新操作,返回受影响的行数
$.ajax({url: '/student/update',type: 'PUT',dataType: 'json',data:data}).done(function (dat) {console.log(dat)if ( dat === 1 ) {alert('更新成功');location.reload();}}).fail(function () {alert('服务器超时,请重试!');});

查询学生表

  • 获取后端数据,使用ajax
$.ajax({url: '/student/getAll',type: 'GET',dataType: 'json'
}).done(function (dat) {data = datshowData(data)}).fail(function () {alert('服务器超时,请重试!');});
  • 渲染数据到表格采用循环数据拼接表格的方式
function showData(data) {let str = "";for (let i = 0; i < data.length; i++) {str = "<tr><td>" + data[i].studentNo + "</td><td>" + data[i].name + "</td><td>" + data[i].age + "</td><td>" + data[i].sex+ "</td>"+'<td>&nbsp;&nbsp;<button  type="button"  οnclick="deleteStudent(this)" >删除</button >&nbsp;&nbsp;<button  type="button"  οnclick="updateStudent(this)" >更新</button ></td>'+"</tr>";$("#container").append(str);}
}
  • 后端数据返回如同以下格式
[{"studentNo": "s001","name": "张三","age": 23,"sex": "男"},{"studentNo": "s002","name": "李四","age": 23,"sex": "男"}
]

利用ajax获取数据对学生表进行简单的增删改查相关推荐

  1. python删除数据库的数据完整代码_利用python操作小程序云数据库实现简单的增删改查...

    不止python,你可以利用任何语言那实现通过http请求来操作你自己的小程序云数据库了 背景 也是在最近吧,小程序更新了云开发 HTTP API 文档,提供了小程序外访问云开发资源的能力,使用 HT ...

  2. javaweb简单的登录增删改查系统_利用python操作小程序云数据库实现简单的增删改查!

    不止python,你可以利用任何语言那实现通过http请求来操作你自己的小程序云数据库了 背景 也是在最近吧,小程序更新了云开发 HTTP API 文档,提供了小程序外访问云开发资源的能力,使用 HT ...

  3. Android前端通过Http协议与J2EE后端数据交互。工具eclipse、MySQL、Tomcat。通过JoSn获取数据。Android端实现对MySQL增删改查功能。

    Android:目录 HttpThread.java package com.example.saads; import java.io.BufferedReader; import java.io. ...

  4. mongodb修改数据语句_MongoDB安装及简单的'增删改查'语句

    * 1. 简介 * 推荐理由 * MongoDB 是一个基于分布式的开源文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. * MongoDB是一个介于关 ...

  5. mongodb修改数据语句_mongodb之一些简单的增删改查语句

    数据库操作: show dbs;#查看数据库 use test;#如果没有就创建一个 db;#查看当前数据库 db.dropDatabase();#删除数据库 数据操作: show collectio ...

  6. ajax获取数据中文乱码问题最简单的完美解决方案

    ajax获取数据中文乱码问题最简单的完美解决方案 参考文章: (1)ajax获取数据中文乱码问题最简单的完美解决方案 (2)https://www.cnblogs.com/konglxblog/p/1 ...

  7. Java-spring数据库编程(idea)实现学生账号登录以及管理员增删改查功能

    通过所学的Spring数据库编程知识,实现学生管理系统的登录及增删改查的功能.要求学生在控制台输入用户名密码,如果用户账号密码正确则显示登录成功,如果登录失败则显示登录失败.登录成功后,可以进行增删改 ...

  8. html单页面js完成表数据库自动生成带注释的java实体类和简单的增删改查sql

    支持Mysql和Oracle,mybatis和ibatis可选.功能主要还是字符串的拼凑完成的,把用把表信息复制过来或者增加后台,就可以生成简单的增删改查了 临时体验点这里 我也不知道地址什么时候失效 ...

  9. oracle 赋予dorp,oracle表空间(tablespace)的增删改查(create/drop/rename,move/select)

    oracle表空间(tablespace)的增删改查(create/drop/rename,move/select) 2013-03-05 oracle维护中经常会对表空间进行操作,整理了一下tabl ...

最新文章

  1. CentOS 6.5下SSH总提示Warning: Permanently added '****' (RSA) to the list of known hosts.
  2. 科普:String hashCode 方法为什么选择数字 31 作为乘子
  3. Java实现归并排序 Merge Sort
  4. Netty实战 IM即时通讯系统(七)数据传输载体ByteBuf介绍
  5. access 打印预览 代码_标签打印软件如何批量打印样品标签
  6. jMeter Thread group 对应的 constant timer
  7. geoda权重矩阵导入matlab,空间计量经济学-分析解析.ppt
  8. php的curl如何返回值,怎么在PHP中利用CURL获取返回值
  9. python入门系列:迭代器和生成器
  10. BZOJ_4199_[Noi2015]品酒大会_后缀自动机
  11. 四六级成绩还可以这样查?Python助你装B一步到位!!!
  12. 【Python3.6爬虫学习记录】(八)Selenium模拟登录新浪邮箱并发送邮件
  13. Spring项目-在线五子棋
  14. PMP证书可以办北京工作居住证的消息,别说你还不知道!
  15. 线性代数(七) : 子空间的基与维数
  16. word中如何在方框中打钩
  17. 贝勒大学计算机专业,贝勒大学(Baylor University)_贝勒大学申请条件_津桥留学【23年专注留学服务】...
  18. python中对称差_python 合集set,交集,并集,差集,对称差集别搞混
  19. iVMS-4200 Vs区别_【5G科普】5G知识知多少?#之5G与4G的区别
  20. 通讯录——C语言实现

热门文章

  1. es的ik分词库下载
  2. 瑞芯微芯片AI部分开发记录 第一节 《PC端环境搭建1》
  3. nexus工作目录设置
  4. 微信小程序template使用方法
  5. 网格布局中 grid-template
  6. Office Word如何自建标题样式,并在换行后默认为正文格式
  7. 在不学成风的大学里顶风而上
  8. 内嵌于球的等边三棱柱
  9. 三星s9 测试性能软件,三星S9/S9+性能测试:4G内存够用、高分辨率不削弱跑分
  10. 卫龙上市酿成资本惨剧:CPE损失上亿美元 高瓴浮亏5000万美元