2016-09-15 78 views
0

新做servlets,我想讓我的下一個和上一個按鈕工作,所以當我點擊下一個按鈕時,它會轉到我指定的頁面上println 。Servlet如何去按鈕上的下一個/上一頁提交

這是我目前的代碼。

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

     response.setContentType("text/html"); 
     PrintWriter out = response.getWriter(); 

     if(session == null){ 
      session = request.getSession(true); 
      out.println("<html>\n" + 
        "<body>\n" + 
        "<form method = \"post\">\n" + 
        "userid: <input type=\"text\" name=\"user_id\">\n" + 
        "<br />\n" + 
        "password: <input type=\"text\" name=\"password\">\n" + 
        "<input type=\"submit\" value=\"Login\" name=\"log_in\">\n" + 
        "</form></body></html>"); 
     } 
    } 

    /** 
    * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 
    */ 
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

    response.setContentType("text/html"); 
    PrintWriter out = response.getWriter(); 

    if(request.getParameter("log_in") != null){ 
     out.println("<html>\n" + 
       "<body>\n" + 
       "<img src=\"images/0.jpg\">\n" + 
       "<input type=\"submit\" value=\"Previous\" name=\"prev\">\n" + 
       "<input type=\"submit\" value=\"Next\" name=\"next\">\n" + 
       "<input type=\"submit\" value=\"lol\" name=\"lol\">\n" + 
       "</body></html>"); 
     if(request.getParameter("next") != null){ 
      out.println("<html>\n" + 
        "<body>\n" + 
        "<img src=\"images/0.jpg\">\n" + 
        "<input type=\"submit\" value=\"Previous\" name=\"prev\">\n" + 
        "<input type=\"submit\" value=\"Next\" name=\"next\">\n" + 
        "</body></html>"); 
     } 
    } 
} 
} 

所以,現在當我點擊下一個什麼都沒有發生。任何幫助,將不勝感激。

謝謝。

+0

請包含'web.xml'文件以及任何相關的UI代碼。 –

+0

在doGet方法中,你在哪裏聲明瞭HttpSession對象?你直接使用會話。 –

回答

0

您需要添加網址爲你的servlet以這種形式action屬性,以便使用後提交表單,回servlet和具有的doPost處理請求:

<form method = \"post\" action = \"/my-servlet-mapping\"> 

爲了使下/上一個按鈕來工作,你需要用他們在這樣的表單元素:

"<form method = \"post\" action = \"/my-servlet-mapping\">\n" + 
    "<input type=\"submit\" value=\"Previous\" name=\"prev\">\n" + 
    "<input type=\"submit\" value=\"Next\" name=\"next\">\n" + 
    "<input type=\"submit\" value=\"lol\" name=\"lol\">\n" + 
"</form>" 

讓他們提交回servlet和doPost方法來處理。

這同樣適用於處理「下一個」情況的地方。

+0

ahh好吧非常感謝,認爲這對我有用。 –

相關問題