任何人都可以帮我解决下面的代码
的servlet:
servlet下面的用于静态定义数组。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
public class SampleAjax extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException
{
response.setContentType("text/html");
string plociyno = "abd1234";
PrintWriter pw = response.getWriter();
if (policyno.equals("abc1234"))
{
List dataList= new ArrayList();
dataList.add("automated refund possible");
request.setAttribute("data",dataList);
RequestDispatcher dispatcher = request.getRequestDispatcher("refund.jsp");
if (dispatcher != null){
dispatcher.forward(request, response);
}
}
}
和我的JSP: JSP用于在表中显示arraylist的值。我想做同样的事情,但使用Ajax。请帮忙。
<html
<body><table id= "table" border="0" width="303">
<tr>
<td width="250"><b>Your Policy Refund Details is:</b></td>
</tr>
<%Iterator itr; %>
<% ArrayList refund= (ArrayList)request.getAttribute("data");
if(refund != null){
for(itr=refund.iterator(); itr.hasNext();){
%>
<tr>
<td><%=itr.next()%></td>
</tr>
<%}}%>
</table>
</body>
</html>
如何使用ajax显示此arraylist值?请帮忙。
答案 0 :(得分:1)
好吧,
首先创建一个函数即。一个将显示您的arraylist值的网址。
在你的doGet()
if(request.getParameter("get").equals("array")){
//code to display array elements
}
这里使用ajax用servlet调用你的servlet?get = array
$.ajax({
url: servlet?get=array,
data: data, //if you need any
success: success,
dataType: dataType // The type of data expected from the server xml? json?text?html?pdf?
});
现在您可以显示AJAX代码中的文本
如果你只想在ajax中使用jsp,那么
这很简单,用你的ajax代码调用整个页面。
$.get(
"http://some-remote-site",
function(data) { alert(data); },
);
我没看到你在这里遇到了什么问题。 ;)
答案 1 :(得分:1)
只需添加
即可<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
然后
<c:forEach var="row" items="${data}" varStatus="i">
<tr>
<td><c:out value="${row[0]}" /></td>
<td><c:out value="${row[1]}" /></td>
...
</tr>
</c:forEach>
通过这种方式,您可以轻松地显示ArrayList数据。