写一个使用前端实现一个学生管理系统的代码
时间: 2024-03-24 12:37:19 浏览: 56
我写的学生管理系统代码
好的,以下是一个使用前端实现的学生管理系统的示例代码,它使用了HTML、CSS、JavaScript和jQuery:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>学生管理系统</title>
<style>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
text-align: left;
padding: 8px;
}
tr:nth-child(even) {
background-color: #f2f2f2;
}
.form-group {
margin-bottom: 20px;
}
.form-group label {
display: block;
margin-bottom: 5px;
}
.form-group input {
width: 100%;
border: 1px solid #ccc;
border-radius: 4px;
padding: 8px;
box-sizing: border-box;
}
button {
background-color: #4CAF50;
color: white;
padding: 12px 20px;
border: none;
border-radius: 4px;
cursor: pointer;
}
button:hover {
background-color: #45a049;
}
</style>
</head>
<body>
<h1>学生管理系统</h1>
<div id="studentList">
<h2>学生列表</h2>
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<!-- 学生列表行将在 JavaScript 中动态添加 -->
</tbody>
</table>
</div>
<div id="addStudent">
<h2>添加学生</h2>
<form id="addStudentForm">
<div class="form-group">
<label for="studentNumber">学号</label>
<input type="text" id="studentNumber" name="studentNumber">
</div>
<div class="form-group">
<label for="name">姓名</label>
<input type="text" id="name" name="name">
</div>
<div class="form-group">
<label for="gender">性别</label>
<input type="radio" id="male" name="gender" value="male" checked>男
<input type="radio" id="female" name="gender" value="female">女
</div>
<div class="form-group">
<label for="age">年龄</label>
<input type="number" id="age" name="age">
</div>
<button type="submit">添加</button>
</form>
</div>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
// 从后端获取学生列表
$.ajax({
url: '/api/students',
type: 'GET',
success: function (data) {
// 将学生列表渲染到表格中
data.forEach(function (student) {
$('#studentList tbody').append(`
<tr>
<td>${student.studentNumber}</td>
<td>${student.name}</td>
<td>${student.gender}</td>
<td>${student.age}</td>
<td><button class="deleteStudent" data-id="${student.id}">删除</button></td>
</tr>
`);
});
}
});
// 添加学生表单提交事件
$('#addStudentForm').submit(function (event) {
event.preventDefault();
var student = {
studentNumber: $('#studentNumber').val(),
name: $('#name').val(),
gender: $('input[name=gender]:checked').val(),
age: $('#age').val()
};
// 向后端发送添加学生请求
$.ajax({
url: '/api/students',
type: 'POST',
data: student,
success: function (data) {
// 清空表单并将新学生添加到表格中
$('#studentNumber').val('');
$('#name').val('');
$('#age').val('');
$('#studentList tbody').append(`
<tr>
<td>${data.studentNumber}</td>
<td>${data.name}</td>
<td>${data.gender}</td>
<td>${data.age}</td>
<td><button class="deleteStudent" data-id="${data.id}">删除</button></td>
</tr>
`);
}
});
});
// 删除学生按钮点击事件
$('#studentList').on('click', '.deleteStudent', function () {
var id = $(this).data('id');
// 向后端发送删除学生请求
$.ajax({
url: '/api/students/' + id,
type: 'DELETE',
success: function () {
// 从表格中移除被删除的学生行
$(this).closest('tr').remove();
}.bind(this)
});
});
</script>
</body>
</html>
```
这个示例实现了以下功能:
1. 显示学生列表。
2. 添加新学生并将其添加到表格中。
3. 删除学生并从表格中删除其行。
当用户提交添加学生表单时,JavaScript 将使用 jQuery 发送 POST 请求到后端 API。同样,当用户点击删除按钮时,JavaScript 将使用 jQuery 发送 DELETE 请求到后端 API。
阅读全文