// my_borrows.js document.addEventListener('DOMContentLoaded', function() { // 归还图书功能 const returnButtons = document.querySelectorAll('.return-btn'); const returnModal = document.getElementById('returnModal'); const returnBookTitle = document.getElementById('returnBookTitle'); const confirmReturnButton = document.getElementById('confirmReturn'); let currentBorrowId = null; returnButtons.forEach(button => { button.addEventListener('click', function() { const borrowId = this.getAttribute('data-id'); const bookTitle = this.getAttribute('data-title'); currentBorrowId = borrowId; returnBookTitle.textContent = bookTitle; // 使用 Bootstrap 的 jQuery 方法显示模态框 $('#returnModal').modal('show'); }); }); confirmReturnButton.addEventListener('click', function() { if (!currentBorrowId) return; // 发送归还请求 fetch(`/borrow/return/${currentBorrowId}`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-Requested-With': 'XMLHttpRequest' }, body: JSON.stringify({}) }) .then(response => response.json()) .then(data => { // 隐藏模态框 $('#returnModal').modal('hide'); if (data.success) { // 显示成功消息 showAlert('success', data.message); // 重新加载页面以更新借阅状态 setTimeout(() => window.location.reload(), 1500); } else { // 显示错误消息 showAlert('danger', data.message); } }) .catch(error => { $('#returnModal').modal('hide'); showAlert('danger', '操作失败,请稍后重试'); console.error('Error:', error); }); }); // 续借图书功能 const renewButtons = document.querySelectorAll('.renew-btn'); const renewModal = document.getElementById('renewModal'); const renewBookTitle = document.getElementById('renewBookTitle'); const confirmRenewButton = document.getElementById('confirmRenew'); renewButtons.forEach(button => { button.addEventListener('click', function() { const borrowId = this.getAttribute('data-id'); const bookTitle = this.getAttribute('data-title'); currentBorrowId = borrowId; renewBookTitle.textContent = bookTitle; // 使用 Bootstrap 的 jQuery 方法显示模态框 $('#renewModal').modal('show'); }); }); confirmRenewButton.addEventListener('click', function() { if (!currentBorrowId) return; // 发送续借请求 fetch(`/borrow/renew/${currentBorrowId}`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-Requested-With': 'XMLHttpRequest' }, body: JSON.stringify({}) }) .then(response => response.json()) .then(data => { // 隐藏模态框 $('#renewModal').modal('hide'); if (data.success) { // 显示成功消息 showAlert('success', data.message); // 重新加载页面以更新借阅状态 setTimeout(() => window.location.reload(), 1500); } else { // 显示错误消息 showAlert('danger', data.message); } }) .catch(error => { $('#renewModal').modal('hide'); showAlert('danger', '操作失败,请稍后重试'); console.error('Error:', error); }); }); // 显示提示消息 function showAlert(type, message) { const alertDiv = document.createElement('div'); alertDiv.className = `alert alert-${type} alert-dismissible fade show fixed-top mx-auto mt-3`; alertDiv.style.maxWidth = '500px'; alertDiv.style.zIndex = '9999'; alertDiv.innerHTML = ` ${message} `; document.body.appendChild(alertDiv); // 3秒后自动消失 setTimeout(() => { alertDiv.remove(); }, 3000); } });