
✍️ 作者简介: 前端新手学习中。
💂 作者主页: 作者主页查看更多前端教学
🎓 专栏分享:css重难点教学 Node.js教学 从头开始学习
目录
通过ajax连接后台,进行后台图书数据的增删,然后将图书数据显示到页面上。
所需要到的库
别忘了导入相关库,使用bootstrap库创建ui界面。
- <body style="padding: 50px;">
-
-
- <div class="panel panel-primary">
- <div class="panel-heading">
- <h3 class="panel-title">添加新图书h3>
- div>
- <div class="panel-body form-inline">
-
- <div class="input-group">
- <div class="input-group-addon">书名div>
- <input type="text" class="form-control" id="iptBookname" placeholder="请输入书名">
-
- div>
- <div class="input-group">
- <div class="input-group-addon">作者div>
- <input type="text" class="form-control" id="iptAuthor" placeholder="请输入书名">
-
- div>
- <div class="input-group">
- <div class="input-group-addon">出版社div>
- <input type="text" class="form-control" id="iptPublisher" placeholder="请输入书名">
-
- div>
- <button id="btnAdd" class="btn btn-primary">添加button>
- div>
- div>
-
-
-
- <table class="table table-bordered table-hover">
- <thead>
- <tr>
- <th>idth>
- <th>书名th>
- <th>作者th>
- <th>出版社th>
- tr>
- thead>
- <tbody>
- <tr>
- <td>td>
- tr>
- tbody>
- table>
-
- body>

请求的根路径
图书列表
| 参数名称 | 参数类型 | 是否必选 | 参数说明 |
|---|---|---|---|
| id | Number | 否 | 图书Id |
| bookname | String | 否 | 图书名称 |
| author | String | 否 | 作者 |
| publisher | String | 否 | 出版社 |
| 数据名称 | 数据类型 | 说明 |
|---|---|---|
| status | Number | 200 成功;500 失败; |
| msg | String | 对 status 字段的详细说明 |
| data | Array | 图书列表 |
| +id | Number | 图书Id |
| +bookname | String | 图书名称 |
| +author | String | 作者 |
| +publisher | String | 出版社 |
获取接口内的图书数据。
- function a() {
- $.get('http://www.liulongbin.top:3006/api/getbooks', function (res) {
- if (res.status !== 200) {
- return console.log(获取数据失败);
- }
- console.log(res);
- })
- }
- a()

将获取到的初始数据全部添加到表格中。
- let rows = [];
- $.each(res.data, function (i, item) {
- rows.push(`
${item.id} ${item.bookname} ${item.author} ${item.publisher} 删除 `) - })
- $('#tb').empty().append(rows)
- })

删除图书
| 参数名称 | 参数类型 | 是否必选 | 参数说明 |
|---|---|---|---|
| id | Number | 是 | 图书Id |
| 数据名称 | 数据类型 | 说明 |
|---|---|---|
| status | Number | 200 删除成功;500 未指定要删除的图书Id;501 执行Sql报错;502 要删除的图书不存在; |
| msg | String | 对 status 字段的详细说明 |
需要在 a标签里添加一个data-id自定义属性,
删除后台服务器中的图书数据,并重新调用获取数据进行显示。
data-id=${item.id}
- $('tbody').on('click', '.del', function () {
- let id = $(this).data('id');
- console.log(id);
- $.get('http://www.liulongbin.top:3006/api/delbook', { id: id }, function (res) {
- console.log(res);
- if (res.status !== 200) {
- return alert('删除失败');
- }
- a()
- })
- })
添加图书
| 参数名称 | 参数类型 | 是否必选 | 参数说明 |
|---|---|---|---|
| bookname | String | 是 | 图书名称 |
| author | String | 是 | 作者 |
| publisher | String | 是 | 出版社 |
| 数据名称 | 数据类型 | 说明 |
|---|---|---|
| status | Number | 201 添加成功;500 添加失败; |
| msg | String | 对 status 字段的详细说明 |
添加后台服务器中的图书数据,并重新调用获取数据进行显示。
- $('#btnAdd').on('click', function () {
- //获取填写内容 不能为空
- let bookname = $('#iptBookname').val().trim();
- let author = $('#iptAuthor').val().trim();
- let publisher = $('#iptPublisher').val().trim();
- if (bookname.length <= 0 || author.length <= 0 || publisher.length <= 0) {
- return alert('请填写完整图书信息')
- }
- $.ajax(
- {
- type: 'post',
- url: 'http://www.liulongbin.top:3006/api/addbook',
- data: {
- bookname: bookname,
- author: author,
- publisher: publisher
- },
- success:
- function (res) {
- if (res.status !== 201) {
- return alert('添加失败');
- }
- a()
- $('#iptBookname').val('');
- $('#iptAuthor').val('');
- $('#iptPublisher').val('');
- }
- }
- )
- a()
- })
