action中存在一个集合,集合里面保存N个Obj数组jquery ajax请求, 如何得到数组中的数据? 
 
求解

解决方案 »

  1.   

    action 的数组,jquery ajax 中接受,直接那样是转不过来滴
    用dwr 很好解决
      

  2.   

    action中数组转成xml或json格式的数据,再用jquery遍历。
      

  3.   

    先遍历集合,再遍历数组。
    双层for循环搞定!
      

  4.   


    3q  好像都用 json ,没接触过   我看看
      

  5.   

    msg.length 有2000多  action中的集合 大小4  请问有哪错了啊?
     $.ajax({
      type:'POST',
      url:'admin_poOrder_getCommodityDetail.action',
      data:{
          productID:id
       },
      dateType:'JSON',  
      success:function(msg){
      alert(msg.length);
      }
     });
    action  private List<PdProductDetail> productList;Struts2 配置文件 <result type="json" name="commodityDetail">
    <param name="root">productList</param>
            </result>
      

  6.   

    异常了 com.googlecode.jsonplugin.JSONException: java.lang.reflect.InvocationTargetException, 62
    javax.servlet.ServletException: com.googlecode.jsonplugin.JSONException: java.lang.reflect.InvocationTargetException
      

  7.   

    msg.length  并不是集合的长度,是ajax返回字符的长度。看下你action 中是怎么写的
      

  8.   

    可以试试派发到jsp页面输出,再用ajax获取页面的内容
      

  9.   

    action 直接就是查询出对象 ,放在了list里面
      

  10.   

    ["{PID:314152,PD_NAME:时尚休闲卫衣 _flora_38423150,BRAND_NAME:flora,BRAND_ID:500005531,PD_ID:3565808,PD_DETAIL_NAME_CN:WThd- 3藏青色,PD_DETAIL_NAME:WThd-3네이비,VENDOR_ID:2307,BP_NAME:11st}"," {PID:314152,PD_NAME:时尚休闲卫衣 _flora_38423150,BRAND_NAME:flora,BRAND_ID:500005531,PD_ID:3565809,PD_DETAIL_NAME_CN:WThd- 3스킨米色,PD_DETAIL_NAME:WThd-3스킨베이지,VENDOR_ID:2307,BP_NAME:11st}"," {PID:314152,PD_NAME:时尚休闲卫衣 _flora_38423150,BRAND_NAME:flora,BRAND_ID:500005531,PD_ID:3565810,PD_DETAIL_NAME_CN:WThd- 3炭色,PD_DETAIL_NAME:WThd-3차콜,VENDOR_ID:2307,BP_NAME:11st}"," {PID:314152,PD_NAME:时尚休闲卫衣 _flora_38423150,BRAND_NAME:flora,BRAND_ID:500005531,PD_ID:3565811,PD_DETAIL_NAME_CN:WThd- 3驼色,PD_DETAIL_NAME:WThd-3카멜,VENDOR_ID:2307,BP_NAME:11st}"]
    数据拿出来了  msg[i].PID  这样拿数据  是位置对象
      

  11.   

     dateType:'JSON',     
     写错了  我晕   dataType才对
      

  12.   

    很好,但Json格式似乎不对,应该是:
    [{PID:"314152",PD_NAME:"时尚休闲卫衣",...},{PID:"",...}]
    这个数据应该在action中用response输出,前台jQuery才可以获取,获取代码如下:$.getJSON(
    url,//action路径
    function(data){
    var val;
    $.each(data, function(i){
    val+=data[i].PID+" | "+data[i].PD_NAME;
       });
    $("#假如有个显示层").html(val);
    });Action中不需要第三个,跟原来一样,无非就是用response输出。当然也可以在原来一个list的action中加一个判断,当url参数传来标记(例如ajax=true),那么就用response输出,否则返回。
    这种方案并不需要com.googlecode.jsonplugin之类的第三方插件。它在网络中传输的数据量非常少,所以高效。前台可以任意组织数据。
    最后注意的是,输出json格式的数据,一定要符合格式,否则ajax调试是个头疼的事。例如[{PID:"314152",PD_NAME:"时尚休闲卫衣",...},{PID:"",...},]这句最后多一个逗号,前台都不能解析的。
      

  13.   

    这些串是我拼的, list是可以直接返回的.  
       朋友谢谢了 是 dataType