我对JSP和Servlet有疑问。我在IDE中使用MVC模型。首先运行代码时调用JSP页面index.jsp。现在我的Servlet是我的控制器。 Jsp页面有一个下拉框,有两个值。这笔交易是我选择一个值假设两个选项中的选项1并提交它。控件应该转到Contoller(Servlet)。控件转移到Controller但是我需要将它重定向到与选项1相关的新页面。这里,我的意思是说在提交index.jsp之后,下拉列表的两个值都会导致我进入两个不同的页面。 / p>
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
String page = request.getParameter("option");
if(request.getParameter("option").equals("1")){
request.setAttribute("s1", page);
RequestDispatcher req = getServletContext().getRequestDispatcher("BrowseMovie.jsp");
req.forward(request, response);
}
else if(request.getParameter("option").equals("2")){
request.setAttribute("s2", page);
RequestDispatcher req = getServletContext().getRequestDispatcher("AddNew.jsp");
req.forward(request, response);
}
} finally {
out.close();
}
}
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Browse Page</title>
</head>
<body color="PINK">
<form action="Controller" method="post">
<h1>Welcome to our Movie Store</h1>
<br>
<p>Please make your selection below</p>
<br>
<select>
<option value="1" name="option">Browse Movies</option>
<option value="2" name="option">Add New Movie To Database</option>
<input type="submit" value="Send" name="Send"/>
</select>
</form>
</body>
答案 0 :(得分:1)
如果您在用户选择下拉选项时尝试导航到另一个页面,那么仅使用jsp或servlet无法实现。你需要添加一些javascript代码才能做到这一点 在javascript中,创建一个函数来通过标记名或id获取表单元素,然后提交它。并通过另一个功能触发此功能,该功能将在用户选择下拉选项后立即触发 通过这种方式,您可以实现您所要求的事情:)