使用json$.ajax({   
        type: 'post',   
        url: "XX.html",   
        cache: false,   
        data: {"id":id},   
        dataType: 'json',   
        success: function(data){   
            jQuery.each(data.aList, function(i,item){   
                alert(item.id+","+item.name);   
            });   
        },   
        error: function(){   
            return;   
        }   
    });  

解决方案 »

  1.   

    jquery本身不支持list这一说
    用JSON或者XML
      

  2.   

    List list = new ArrayList();
    Map map = new HashMap();
    map.put("id",100);
    map.put("name","abc");
    list.add(map);
    String json = JSONArray.fromObject(list).toString(); //调用这个类和方法需要导入一些jar包,自己从网上搜吧。
    out.print(json);
    return null;$.getJSON("xxx.action",function(data)
    {
        for(var i = 0;i < data.length;i++)
        {
            var id = data[i].id;
            var name = data[i].name;
        }
    });
      

  3.   

    jquery 循环你的集合 集合在后台转换成json就可以了啊 很简单的 google吧
      

  4.   

     返回json格式并实现序列化 遍历就OK(你在后面是什么数据结构,前台就是...)
      

  5.   

      首先返回的数据必须是json格式,行如:[{name:'张三',sex:'男',age:12},{name:'张三',sex:'男',age:12}...]这样的数据java可以返回,比如student类,你可以重写toString方法到达这种格式:{name:'张三',sex:'男',age:12} 再封装到list中就成了上面的格式了,在调用eval方法进行转换成标准的json对象。这是LZ就可以在js使用这个数据了,比如说遍历。LZ应该明白了吧.
      

  6.   

    我试了下,没打出来,关键代码如下:
         test=new ArrayList();
         User user1=new User();
         user1.setUser_age(23);
         user1.setUser_email("[email protected]");
         user1.setUser_id(1);
         user1.setUser_name("tan");[code=JScript]
    $.ajax( {
    type : 'post',
    url : "book/pages!isCurPageEqTotalPage",
    dataType : 'json',
    success : function(data) {
    alert("flag 是" + data.flag);
    if (data.flag) {
    alert("测试开始")
    alert(data.test.length);
    $.each(data.test, function(i,item) {
    alert("用户ID" + item.user_id + " 用户姓名 :" + item.user_name);
    });
    alert("测试结束")
    // $("#nextPage2").css("display", "none");
                  }},
         error : function() {
                 return;
                       }
    });
    });
         user1.setUser_pwd("pwd");
        
         User user2=new User();
         user2.setUser_age(12);
         user2.setUser_email("[email protected]");
         user2.setUser_id(2);
         user2.setUser_name("tanshuangxi");
         user2.setUser_pwd("password");
        
         test.add(user1);
         test.add(user2);
         System.out.println("两个测试用户已放入集合");
         System.out.println("test的长度是"+test.size());[/code]
     <result name="isEqual" type="json">
    <param name="includeProperties">flag,test</param>
    </result>
    弹出来,测试开始 和 测试结束,但是中间的内容没有弹出来 
      

  7.   


    我用你说的这种方法,把List转换成json格式的字符串,也加了jar包(只有一个)。想在后台打印出转换后的字符串,可后台却什么也没打出来,也没有报错,不知道哪出来了问题,
    补充:
         JSONArray jsonArray=null;
         jsonArray=JSONArray.fromObject(test2);
         test=jsonArray.toString();
         System.out.println("转换后的tets是"+test);
      

  8.   

    去网上下载个gson的jar 在去看看gson api 你就明白了
      

  9.   

    综合1楼 3楼 和8楼,最后得出正确结果:
    关键代码如下:
    java:

                 List test2 = new ArrayList();
    User user1 = new User();
    user1.setUser_age(23);
    user1.setUser_email("[email protected]");
    user1.setUser_id(1);
    user1.setUser_name("jerry");
    user1.setUser_pwd("pwd"); User user2 = new User();
    user2.setUser_age(12);
    user2.setUser_email("[email protected]");
    user2.setUser_id(2);
    user2.setUser_name("tanshuangxi");
    user2.setUser_pwd("password"); test2.add(user1);
    test2.add(user2);
    test = JSONArray.fromObject(test2).toString();ps:JSONArray.fromObject()用于将list集合转换成json格式的字符串,用的时候一定要把相关的全部导入,之前没有导入完全,神马也没输出来,也没报错,郁闷了半天,呵呵js:$.ajax( {
    type : 'post',
    url : "book/pages!isCurPageEqTotalPage",
    dataType : 'json',
    success : function(data) {
     alert("返回的数据是"+data.test);
    var list = eval('(' + data.test + ')');
    $.each(list,function(i, item) {
    alert("i是" + i + "用户ID" + item.user_id + " 用户姓名 :"+ item.user_name);
    });
    alert("测试结束")
    // $("#nextPage2").css("display", "none");
    // }
    },
    error : function() {
    return;
    }
    });ps:从后台接受到返回的字符串后,还有eval()方法处理下,注意处理的格式,要在数据外再一对括号,并且括号要打上引号,希望对遇到同样问题的人有帮助。呵呵
      

  10.   

    想问下楼主,你上面输出的是直接用的out.print()还是在struts.xml文件配置的,最近刚接触jquery的Ajax 有些地方不是很明白,能不能给个完整的案例啊,感激不尽了,
    邮箱:[email protected]
      

  11.   

    这里有详细说明
    http://www.suchso.com/projecteactual/jquery-aspnet-back-js-parse-object-list.html