161 lines
5.9 KiB
HTML
161 lines
5.9 KiB
HTML
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8"/>
|
||
<title>课程签到</title>
|
||
<meta name="renderer" content="webkit"/>
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||
<link href="/static/css/layui.css" rel="stylesheet">
|
||
</head>
|
||
|
||
<body>
|
||
<div class="layui-layout layui-layout-admin">
|
||
<div class="layui-header">
|
||
<div class="layui-logo layui-hide-xs layui-bg-black">网上上课点名系统</div>
|
||
<!-- 头部区域(可配合layui 已有的水平导航) -->
|
||
<ul class="layui-nav layui-layout-left">
|
||
<!-- 移动端显示 -->
|
||
<li class="layui-nav-item layui-show-xs-inline-block layui-hide-sm" lay-header-event="menuLeft">
|
||
<i class="layui-icon layui-icon-spread-left"></i>
|
||
</li>
|
||
<li class="layui-nav-item layui-hide-xs"><a href="/attendance-teacher/attendance">签到</a></li>
|
||
<li class="layui-nav-item layui-hide-xs"><a href="/attendance-teacher/import-class">导入班级</a></li>
|
||
</ul>
|
||
<ul class="layui-nav layui-layout-right">
|
||
<li class="layui-nav-item layui-hide layui-show-sm-inline-block">
|
||
<a href="javascript:;">
|
||
<img
|
||
src="//unpkg.com/outeres@0.0.10/img/layui/icon-v2.png"
|
||
class="layui-nav-img"
|
||
/>
|
||
{{ session.nickname }}
|
||
</a>
|
||
<dl class="layui-nav-child">
|
||
<dd><a href="/home/profile">资料</a></dd> <!-- 修改这里的href指向/profile -->
|
||
<dd><a href="javascript:;" id="logoutLink">登出</a></dd>
|
||
</dl>
|
||
</li>
|
||
<li
|
||
class="layui-nav-item"
|
||
lay-header-event="menuRight"
|
||
lay-unselect
|
||
></li>
|
||
</ul>
|
||
</div>
|
||
<div class="layui-side layui-bg-black">
|
||
<div class="layui-side-scroll">
|
||
<!-- 动态加载菜单栏 -->
|
||
<ul class="layui-nav layui-nav-tree" lay-filter="test">
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="layui-body">
|
||
<table id="attendanceTable" class="layui-table">
|
||
<!-- 表头 -->
|
||
<thead>
|
||
<tr>
|
||
<th>课程名称</th>
|
||
<th>课程代码</th>
|
||
<th>学分</th>
|
||
<th>班级名称</th>
|
||
<th>专业</th>
|
||
<th>签到</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<!-- 表格数据将在这里填充 -->
|
||
</tbody>
|
||
</table>
|
||
<div id="pagination"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<script src="/static/jquery.min.js"></script> <!-- 确保已经引入jQuery -->
|
||
<script src="/static/layui.js"></script>
|
||
<script>
|
||
// 请求后端获取菜单数据
|
||
$.get('/api/menu', function (menuItems) {
|
||
var menuList = $('.layui-nav.layui-nav-tree');
|
||
menuList.empty();
|
||
|
||
menuItems.forEach(function (item) {
|
||
var href = item.path || 'javascript:void(0);'; // 提供一个默认值
|
||
menuList.append('<li class="layui-nav-item"><a href="' + href + '">' + item.name + '</a></li>');
|
||
});
|
||
|
||
layui.element.render('nav', 'test');
|
||
});
|
||
layui.use(['laypage', 'element', 'jquery', 'dropdown'], function () {
|
||
var laypage = layui.laypage;
|
||
var $ = layui.jquery;
|
||
|
||
function renderTable(page) {
|
||
// 发送GET请求到服务器端点
|
||
$.get('/api/get-teacher-attendance-table?page=' + page, function (response) {
|
||
var $tbody = $('#attendanceTable tbody');
|
||
$tbody.empty(); // 清空表格内容
|
||
|
||
// 遍历返回的数据数组
|
||
response.data.forEach(function (item) {
|
||
// 创建新的行并填充数据
|
||
var $row = $('<tr></tr>');
|
||
$row.append(`<td>${item.course_name}</td>`);
|
||
$row.append(`<td>${item.course_code}</td>`);
|
||
$row.append(`<td>${item.credits}</td>`);
|
||
$row.append(`<td>${item.class_name}</td>`);
|
||
$row.append(`<td>${item.major}</td>`);
|
||
$row.append(`<td>
|
||
<div class="btn-container">
|
||
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="checkin">签到<i class="layui-icon layui-icon-down"></i></a>
|
||
</div>
|
||
</td>`)
|
||
$tbody.append($row);
|
||
|
||
});
|
||
// 渲染分页控件
|
||
laypage.render({
|
||
elem: 'pagination', // 分页容器的id
|
||
count: response.count, // 总条数
|
||
limit: 10, // 每页显示条数
|
||
curr: page, // 当前页
|
||
jump: function (obj, first) {
|
||
if (!first) { // 首次不执行
|
||
renderTable(obj.curr); // 根据页码加载数据
|
||
}
|
||
}
|
||
});
|
||
});
|
||
}
|
||
|
||
function toggleDropdown(dropdown) {
|
||
$(dropdown).find('.dropdown-menu').toggle(); // 显示或隐藏下拉菜单
|
||
}
|
||
|
||
|
||
// 初始加载第一页
|
||
renderTable(1);
|
||
});
|
||
|
||
|
||
layui.use(['jquery'], function () {
|
||
var laypage = layui.laypage;
|
||
// 普通用法
|
||
laypage.render({
|
||
elem: 'attendance_teacher_page',
|
||
count: 100 // 数据总数
|
||
});
|
||
var $ = layui.jquery; // 获取Layui的jQuery对象
|
||
|
||
$('#logoutLink').on('click', function () {
|
||
// 向后端发送登出请求
|
||
$.get('/logout', function (data) {
|
||
// 重定向到登录页面,或根据后端响应做其他处理
|
||
window.location.href = '/login';
|
||
});
|
||
});
|
||
});
|
||
</script>
|
||
</body>
|
||
</html>
|