图书管理系统
创作时间:
作者:
@小白创作中心
图书管理系统
引用
CSDN
1.
https://blog.csdn.net/newlw/article/details/126915158
本文介绍了一个基于HTML、CSS和JavaScript的图书管理系统项目。该系统使用jQuery进行页面加工,通过AJAX实现异步信息读取,并采用JSON格式存储相关数据。系统包含注册、登录、主界面等多个功能模块,实现了图书信息的添加、删除、搜索等管理功能。
项目设计方案
本项目采用HTML、CSS和JavaScript语言开发图书管理系统,使用jQuery进行页面加工,AJAX实现异步信息读取,JSON格式存储相关数据。
项目界面设计
- 注册界面:包含用户名、密码和邮箱三个输入框,下方设有注册按钮和CSS制作的小球波浪动画,以贺卡布局展现整个页面。
- 登录界面:包含用户名和密码两个输入框,下方设有登录按钮,同样采用贺卡布局。
- 主界面:包含图书信息表格、添加图书的输入框、搜索框、管理系统标题和页脚,背景为图书馆实景图。
项目交互设计
- 注册功能:输入框内容为空时弹出警告,注册成功后自动跳转到登录页面。
- 登录功能:输入框内容为空或用户名密码验证失败时弹出警告,验证成功后跳转到主界面。
- 添加图书:输入框内容为空或书籍数量为负时弹出警告,否则将图书信息添加到表格中。
- 搜索图书:根据书名、作者或出版社信息进行搜索,未找到时弹出提示。
- 删除图书:点击删除按钮可删除单条图书信息。
项目功能设计
- 注册:用户输入用户名、密码和邮箱进行注册,输入框内容为空时弹出警告。
- 登录:用户输入用户名和密码,与存储的JSON数据进行验证,验证成功进入主界面,否则弹出警告。
- 浏览图书:进入主界面后可查看表格中的图书信息,鼠标移动到图书信息上会有效果变化。
- 增加图书:设置书名、作者名、数量、出版社和单价五个输入框,用户输入信息后点击添加按钮添加到表格上,输入框为空或书籍数量为负时弹出警告。
- 删除图书:点击图书表格上每条图书后的删除按钮,删除单条图书信息。
- 搜索图书:用户在搜索框输入书名、作者或出版社信息,点击搜索按钮弹出详细信息,未搜索到时弹出提示。
项目代码实现
以下是项目的核心代码实现:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图书管理系统</title>
<link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet">
<script type="text/javascript" src="jquery.js"></script>
<style>
table {
width: 500px;
height: 100px;
background-color: white;
opacity:0.9;
text-align: center;
}
.but{
background-color: transparent;
border: none;
color: blue;
}
.but:hover{
text-decoration: underline;
color: red;
}
#tab {
margin-top: 2%
}
#find {
margin-top: 5%;
padding-right: 0;
}
#name,
#au,
pub {
width: 16%;
}
#num,
#money {
width: 10%;
}
.add {
margin-left: 10px;
}
#header {
margin-top: 20%;
}
.icon{
width: 5%;
margin-right: 10px;
}
.conticon{
margin-top: -8%;
margin-left: 1%;
}
</style>
</head>
<body>
<div id="box">
<div class="container">
<h1 style="position: absolute;top: 10%;left: 45%;">图书管理系统</h1>
<div id="header">
<div class="col-md-12">
<form class="form-inline">
<div class="form-group">
<label for="exampleInputName2">书名:</label>
<input type="text" id="name" / class="form-control">
<label for="exampleInputName2">作者:</label>
<input type="text" id="au" / class="form-control">
<label for="exampleInputName2">数量:</label>
<input type="number" id="num" / class="form-control">
<label for="exampleInputName2">出版社:</label>
<input type="text" id="pub" / class="form-control">
<label for="exampleInputName2">单价:</label>
<input type="number" id="money" / class="form-control">
<input type="button" id="addBook" class="add btn btn-primary" value="添加图书" />
</div>
</form>
</div>
</div>
<div id="find" class="col-md-4 col-md-offset-8">
<div class="col-md-10" style="margin-left: -7px;">
<input type="text" class="txtx form-control" id="tex" placeholder="请输入想要查找的书名/作者名/出版社">
</div>
<input type="button" value="搜索" class="butt btn btn-primary" >
</div>
<div class="col-md-12">
<div class="table-responsive">
<table border="1" cellspacing="0" cellpadding="0" id="tab" class="tabb table table-hover ">
<tr id="clone">
<td>书名</td>
<td>作者</td>
<td>数量</td>
<td>出版社</td>
<td>单价</td>
<td> </td>
</tr>
<tbody>
</tbody>
</table>
</div>
</div>
<div class="footer">
<div class="container">
<div class="row text-center">
<div class="col-md-10 col-md-offset-1" style="padding-bottom: 10%;padding-top: 10%;">
<h4 style="color:#6e6969;">Wechat : hictoo / QQ : 2947873981 / 2947873981@qq.com / Tel : 187425277701 </h4>
<h4 style="color:#6e6969;">点击下方图标与我联系</h4>
</div>
</div>
</div>
<div class="conticon col-md-12 text-center">
<a href="tencent://message/?uin=2947873981&Site=qq&Menu=yes"><img src="./sucai/qq.png" alt="" class="icon"></a>
<a href="mailto:2947873981@qq.com"><img src="./sucai/email.png" alt="" class="icon"></a>
</div>
</div>
</div>
</div>
<script>
$.ajax({
url: "books.json",
dataType: "json",
success: function(data) {
//data -- 请求成功的相应数据 responseText
console.log(data);
$.each(data.result.list, function(index, item) {
console.log(item.bookname);
var bookname = item.bookname;
var author = item.author;
var count = item.count;
var publish = item.publish;
var price = item.price;
var txt = "<tr><td>" + bookname + "</td><td>" + author + "</td><td>" + count + "</td><td>" + publish + "</td><td>" + price + '' + "</td><td>" + '<button id="deleteB" class="but">删除</button>' + "</td></tr>";
$(".tabb").append(txt);
})
var obj = data.result.list;
console.log(obj);
$(document).ready(function() {
//搜索图书信息
$("#find").on("click", ".butt", ser);
function ser() {
console.log("find");
var text = $("#tex").val();
console.log(text);
var text2 = $("#tex2").val();
var text3 = $("#tex3").val();
var len = data.result.list.length;
console.log(len);
// console.log(data.result.list[1].bookname);
var a = 0;
for (var i = 0; i < len; i++) {
if (text == data.result.list[i].bookname) {
alert("书名: " + data.result.list[i].bookname + "\n作者: " + data.result.list[i].author + "\n数量: " + data.result.list[i].count + "\n出版社: " + data.result.list[i].publish + "\n价格: " + data.result.list[i].price);
$("#tex").val("");
a++;
}
if (text == data.result.list[i].author) {
alert("书名: " + data.result.list[i].bookname + "\n作者: " + data.result.list[i].author + "\n数量: " + data.result.list[i].count + "\n出版社: " + data.result.list[i].publish + "\n价格: " + data.result.list[i].price);
$("#tex").val("");
a++;
}
if (text == data.result.list[i].publish) {
alert("书名: " + data.result.list[i].bookname + "\n作者: " + data.result.list[i].author + "\n数量: " + data.result.list[i].count + "\n出版社: " + data.result.list[i].publish + "\n价格: " + data.result.list[i].price);
$("#tex").val("");
a++;
}
}
if (a == 0) {
alert("没有找到相关信息");
$("#tex").val("");
}
}
//删除图书信息
$("#tab").on("click", ".but", de);
function de() {
console.log("eeeee");
$(this).parent().parent().remove();
}
//添加图书信息
$("#header").on("click", ".add", ad);
function ad() {
var bookname = $("#name").val();
var author = $("#au").val();
var count = $("#num").val();
var publish = $("#pub").val();
var price = $("#money").val();
if(bookname==""||author==""||count==""||publish==""||price==""){
alert("请完善图书信息,任何信息不得为空");
console.log("afaf");
}
else{
if(parseInt(count)<0){
alert("图书数量不能为负");
}
else{
var txt2 = "<tr><td>" + bookname + "</td><td>" + author + "</td><td>" + count + "</td><td>" + publish + "</td><td>" + price + '' + "</td><td>" + '<button id="deleteB" class="but">删除</button>' + "</td></tr>";
$(".tabb").append(txt2);
data.result.list.push({
bookname,
author,
count,
publish,
price
});
console.log(data.result.list);
$("#name").val("");
$("#au").val("");
$("#num").val("");
$("#pub").val("");
$("#money").val("");
}
}
}
});
},
error: function(jqxhr, textStatus, err) {
console.log(jqxhr, textStatus, err)
}
})
var hei = $(window).height();
// console.log(wid);
console.log(hei);
$("#box").css({
"background-image":"url(gi.jpg)",
"background-size":"100%",
//"width": wid,
"height": hei
});
</script>
</body>
</html>
项目界面展示
以下是项目界面的图片展示:
热门推荐
Steam97%好评如潮的电子斗蛐蛐神作,为何被称作“沙雕游戏”?
服用人工牛黄甲硝唑胶囊期间多久可以喝酒?
NBA季后赛历史高分纪录:乔丹主宰榜单,艾弗森、巴特勒等名将闪耀
如何整理图片数据库
每年必做的黄瓜咸菜
手抄报有哪些安全?手抄报安全小贴士:制作更安心!!
鸡蛋消费进入旺季 蛋鸡养殖效益处于高水平 养殖户积极扩栏
上海“乐园热”持续升温 “快乐经济”蓬勃发展
为什么防盗门无法正常关闭?
捡到贵重物品如何处理?一文详解法律义务与注意事项
如何正确保养和清洗黄金?保养清洗黄金有哪些注意事项?
如何在虚拟机解压rar文件
NBA杯半决赛:勇士大战火箭!球员表现:2人优异,2人及格,1人不及格
letus和lets的区别反义疑问句_高中英语知识点解答
6种鱼丸的配方及加工工艺
牛蒡根泡水喝的七大功效与禁忌
彩礼纠纷诉讼:你需要准备哪些关键证据?
一线城市租金收入比全部下降,租房更划算了吗?
炉石传说22.0补丁更新一览:三张钻石卡牌、新奖励路线及游戏模式更新详解
当下的力量
小说创作必读:《冲突与悬念》核心写作技巧全解析
英国小学生英文阅读进阶之路:从启蒙到写作
新疆冬季这片神秘之地隐藏着怎样的惊喜
化学学习:莫让技巧掩盖本质
合同陷阱套路多?看这篇莫踩坑!
鸽子汤的功效与作用
菜饼这么做太绝了,外酥里嫩,香气四溢,一口一个根本停不下来!
怎么做到自我反思(有效进行自我反思的方法)
婚姻中的挑战与机遇:应对变化和增强关系的策略
伪装和模仿:动物世界的生存策略。