jquery直接显示jsp返回的数据

jQuery是目前一个很流行的js框架,它也提供了对ajax很好的支持。使用ajax异步请求数据时,如果服务器返回的一个列表数据,通常的做法是把列表数据转换成json格式的数据,然后返回到页面,使用jQuery进行解析并用表格来显示,这要求你对javascript解析json很熟透。

我在这里提供一种投机取巧的做法,使用jQuery发送异步请求给Servlet,Servlet仍然使用JSP渲染结果,最后由JSP返回html给客户端页面,客户端页面通过jQuery直接把数据显示在页面上。这样就可以在JSP页面上继续使用类似JSTL的标签库来完成数据的显示。具体示例如下:

 

1. 客户端发起请求和显示结果的页面: index.html

ajax直接显示jsp返回的数据

 

 

2. 服务器接收请求并处理数据的Servlet: TestServlet.java

package com.qiujy.web.controller; import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Random; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List list = new ArrayList(); Random random = new Random(); int max = random.nextInt(31); for(int i = 0; i < max; i++){ list.add("测试数据"+ i); } request.setAttribute("data", list); request.getRequestDispatcher("/data.jsp").forward(request, response); } }

 

3. 服务器显示数据的JSP:data.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

序号数据操作
${vs.count}${str} 修改 删除

 

 示例比较简单,就是上面三个主要文件。如果实在是需要源代码。留言邮箱或者到这个链接下载 http://download.csdn.net/source/2291129

 

你可能感兴趣的:(JavaScript)