นี่คือปัญหา ฉันมีเพจ JSP 3 หน้า (main.jsp, manageClasses.jsp และ insertDates.jsp) และ 2 Servlets (AttendanceServlet และ ManageClassServlet) หน้าหลักจะโหลดหน้าอื่นๆ ที่อยู่ในนั้นเอง
โดยพื้นฐานแล้วสิ่งที่ฉันต้องการทำคือเมื่อเรียก AttendanceServlet ฉันต้องการโหลด insertDates.jsp ลงใน main.jsp แทนที่เนื้อหาก่อนหน้าซึ่งโหลดโดย ManageClassServlet
main.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="js/jquery-1.7.min.js"></script>
<link rel="stylesheet" href="/thcss/stylesheetprincipal.css">
<script type="text/javascript">
$(document).ready(function() {
$("#gt").click(function(){
$("#internal").load('ManageClassServlet');
});
});
</script>
<title>Main</title>
</head>
<body>
<div id="nav">
<ul>
<li><a href="/thjavascript:void(0)" id="gt" title="manage">MANAGE CLASSES</a></li>
<li><a href="/thlogout.jsp" title="exit">EXIT</a></li>
</ul>
</div>
<div id="forms">
<div id="internal">
</div>
</div>
</body>
</html>
จัดการClassServlet
@WebServlet(name = "ManageClassServlet", urlPatterns = {"/ManageClassServlet"})
public class ManageClassServlet extends HttpServlet {
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
HttpSession session = request.getSession();
String[][] tableMatrix = getTableMatrix(professorClasses);
session.setAttribute("tableMatrix", tableMatrix);
response.sendRedirect("manageClasses.jsp");
}
}
จัดการClasses.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Manage Classes</title>
</head>
<body>
<form action="AttendanceServlet" method="post">
<table id="classTable" border="2">
<TR> <TH> </TH> <TH>Subject</TH> <TH>Year/Semester</TH> <TH>Frequencias</TH> </TR>
<c:forEach items="${matrixTable}" var="row" varStatus="i">
<tr>
<TH>${row[0]}</TH>
<c:forEach begin="1" end="2" items="${row}" var="value">
<td>${value}</td>
</c:forEach>
<td> <button type="submit" name="Ver" value="${row[3]}">See </button> </td>
</tr>
</c:forEach>
</table>
</form>
</body>
</html>
ฉันพยายามใช้ out Object เพื่อส่งหน้า jsp แต่มันไม่ทำงาน
เซิร์ฟเวอร์การเข้าร่วม
@WebServlet(name = "AttendanceServlet", urlPatterns = {"/AttendanceServlet"})
public class AttendanceServlet extends HttpServlet {
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
try {
ClassDAO classDao = new ClassDAO();
Integer idClass = Integer.parseInt(request.getParameter("See"));
ClassBean class = classDao.searchClassBean(idClass);
if (class.getDateClasses() == null) {
String path = "/WEB-INF/jsp/main.jsp";
PrintWriter out = response.getWriter();
out.println("<script type=\"text/javascript\">");
out.println("$(document).ready(function() {");
out.println("$(\"#internal\").load('insertDates.jsp');");
out.println("});");
out.println("</script>");
RequestDispatcher dispatcher = request.getRequestDispatcher(path);
dispatcher.include(request, response);
}
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}