2014-02-11 135 views
1

我有一个关于JSP和Servlet的问题。我在IDE中使用MVC模型。我首先运行代码时会调用JSP页面index.jsp。现在我的Servlet是我的控制器。 Jsp页面有一个有两个值的下拉框。该交易是如果我选择一个值假设选项1中的两个选项并提交。该控件应该转到Contoller(Servlet)。控制权被转移到控制器,但我需要将其重定向到与选项1相关的新页面。这里,我的意思是说,在提交我的index.jsp后,下拉的两个值应该会导致我到两个不同的页面。使用下拉列表选择值浏览JSP页面

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> 

+1

你忘了告诉我们你的问题是什么 – gerrytan

回答

1

如果你想尽快导航到另一个页面,用户选择下拉选项,那么它不可能实现,只有JSP或Servlet。您需要添加一点JavaScript代码才能做到这一点。
在JavaScript中,创建一个函数,通过标记名或ID获取表单元素,然后提交它。并通过另一个函数触发该函数,只要用户选择下拉选项,该函数将被触发。
以这种方式你可以达到你问的东西:)