日期:2014-05-17  浏览次数:20645 次

jquery取list值问题
我有一个servlet中取到一个list
如何利用jquery取得它
并且在页面上循环打印

------解决方案--------------------
用JSON
------解决方案--------------------
把list转化成字符串传到前台,字符串的形式推荐用JSON,对象转化为JSON字符串可用工具类JSON-LIB,前台取到后就是一个java对象,不用JQUERY也能很容易的遍历
------解决方案--------------------
后台的东西跟jquery没什么关系,可以把list的内容包装后传道前台,至于如何便利,如何取值,就很简单了,同样跟用不用jquery没什么关系,jquery的强项在于对页面元素的筛选。
------解决方案--------------------
用json要加一大堆包。如果是简单的实现一下,可以直接用ajax解析一下xml搞定:
servlet代码:
Java code

package com.panjun.servlets;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@SuppressWarnings("unchecked")
public class ShowListServlet extends HttpServlet {

    private static final long serialVersionUID = -6920365688165262694L;

    private final List list = new ArrayList();

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/xml;charset=UTF-8");
        PrintWriter out = resp.getWriter();
        
        //生成xml文件返回给html页面
        StringBuilder xml = new StringBuilder();
        xml.append("<items>");
        for (Object o : list) {
            xml.append("<item>").append(o).append("</item>");
        }
        xml.append("</items>");
        out.print(xml.toString());
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }

    @Override
    public void init() throws ServletException {
        list.add("aaaa");
        list.add("bbbb");
        list.add("cccc");
        list.add("dddd");
    }
}

------解决方案--------------------
帮顶!
JSON