[英]jQuery - AJAX call of Servlet
我正在構建一個用於存儲科學出版物的Web應用程序。 我用過MySQL,JSP,jQuery和JAVA。
我在JSP頁面中有一個表單,如下所示:
<form method="get">
<input type="text" id="code">
<button onclick="request()">Search</button>
</form>
函數request()是:
function request() {
var code = $('#code').val();
var data='code='+code;
$.ajax({
url: "Servlet",
type: "GET",
data: data,
success: function(){
alert("success");
},
error:function(){
alert("failure");
}
});
};
Servlet做一些事情,然后將查詢的結果集保存在請求對象中,然后將結果轉發到索引上,如下所示
request.setAttribute("result", resultSet);
RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/index.jsp");
dispatcher.forward(request, response);
index.jsp包含:
<% if(request.getAttribute("result")!=null){ %>
<jsp:include page="table.jsp" />
<%}%>
檢查結果集是否已填充,然后包括table.jsp,頁面掃描結果集並將值放在表中。
此代碼無效,有人可以幫助我嗎? 1-查詢運行正確2-正確調用了jQuery
但是
if(request.getAttribute("result"))
始終為null。
嘗試讓您的Servlet擴展HttpServlet ,並嘗試如下操作:
public class TestServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
request.setAttribute("result", "value");
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.