2015-06-09 41 views
0

我試圖在技術中使用JSP ajax保存小記錄。項目工作流程就是這樣。

01的index.jsp:將數據發送至SaveStudent的servlet
02 SaveStudent:Get請求表單JSP並將其發送到驗證Java類
03.驗證:驗證數據和發送到DaoImpl java類
04. DaoImpl:覆蓋StudentDAO中的方法,執行保存SQL查詢。
05. StudentDAO:一個接口有所有數據庫相關的方法。Ajax響應不會在JSP頁面中顯示


這是項目的圖像。
Project Structure


下面給出的是index.jsp的文件的源代碼。

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
    <!DOCTYPE html> 
<html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 

    <script src="//code.jquery.com/jquery-1.11.3.min.js"></script> 
    <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 


</head> 
<body> 
    <form action="SaveStudent" method="post"> 
     <label>Enter Name:</label> 
     <input type="text" name="name" id="txtName"/> 
     <br/> 
     <label>Enter City:</label> 
     <input type="text" name="city" id="txtCity"/> 
     <br/> 
     <input type="submit" value="Send" id="btnSave"/> 
     <div id="response"></div> 
    </form> 

    <script type="text/javascript"> 
     $(document).ready(function() { 
      $('#btnSave').click(function() { 
       var $name = $("#txtName").val(); 
       var $city = $("#txtCity").val(); 
       $.post('SaveStudent', { 
        name: $name, 
        city: $city 
       }, function(responseText) { 
        if (responseText !== null) { 
         $('#response').text(responseText); 
        } else { 
         alert("Invalid Name"); 
        } 
       }); 
      }); 
     }); 

    </script> 


</body> 


這裏是SaveStudent Java類的源代碼。

package Control; 

import java.io.IOException; 
import java.io.PrintWriter; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import Model.Validation; 

public class SaveStudent extends HttpServlet { 

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

    PrintWriter out = response.getWriter(); 
    String record = ""; 
    try { 

     Validation val = new Validation(); 
     record = val.validateSave(request, response); 
     response.setContentType("text/plain"); 
     response.setCharacterEncoding("UTF-8"); 
     if (record != null) { 
      out.write(record); 

     } else { 
      out.print("Error Occured..!"); 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } finally { 
     out.close(); 
    } 
} 

}


保存記錄工作正常。數據庫也在更新。但問題是在Servlet頁面中出現「Save Successful」消息。不在jsp頁面下。
Browser


請幫我在這。謝謝。

+0

是的,它也工作。謝謝。我找出另一種方式。我把「提交」類型替換爲「按鈕」。現在工作完美。感謝您的時間。 –

+0

是的,親愛的,它正在工作。 –

回答

0

我想出了一個辦法。我把「提交」類型替換爲「按鈕」。現在工作完美。感謝您的時間。