通过ajax向servlet请求一个list,请问该ajax这边该如何取值?并在页面表现出来? OrderBean ob = new OrderBean();
ob.setFactor(about);
ob.setFactorValue(factorValue);
List<OrderBean> list = ob.UserGetSearch();//这里得到了数据集list
//session.setAttribute("searchResults", list);
//request.setAttribute("searchResults", list);
各位请看上面代码,我从数据库得到数据后,如果用request.setAttribute的方法,前台jsp因为是通过jquery的ajax操作数据,通过下面代码
<c:forEach items="${ sessiontScope.searchResults }" var="list" >
<tr>
     <td>${list.ordernumber}</td>
        <td>${list.getter}</td>
        <td>${list.arriveaddress}</td>
        <td>${list.trantype}</td>
        <td>${list.goodsweight}</td>
        <td>${list.aps}</td>
        <td>${list.backmsg}</td>
        <td>${list.ods}</td>
</tr>
</c:forEach>  request无法取得数据,(个人估计是因为使用ajax操作数据)。如果session.setAttribute,前台这边要刷新一下才能得到结果(我是数据写入局部div,刷新又改变了其他部分),何解?如果使用xml或json传送数据呢?大家有没有这方面的好例子啊?帮小弟解决一下这几个疑问,不胜感激!

解决方案 »

  1.   

    在servlet中把list数据封装成JSON格式,前台用JQuery获取,也可以把数据封装成xml格式,前台也可以获取
    http://www.verycd.com/上有相关视频,搜索传智播客ajax就可以搜到
      

  2.   

    Ajax 和HTTP请求是一个道理呀.
    简单点写个SERVLET,然后把<TD>那段PRINT出去.再MAPPING到URL,AJAX请求这个MAPPING的URL,不就可以了吗
      

  3.   

    OrderBean ob = new OrderBean(); 
    ob.setFactor(about); 
    ob.setFactorValue(factorValue); 
    List <OrderBean> list = ob.UserGetSearch();//这里得到了数据集list 
    ajax是javascript,所以没有list这东东
    --------------
    将你的这个list转换成一个json或者xml
    总之就是你页面上要的东西,比如你要的这些属性
    <tr> 
        <td>${list.ordernumber} </td> 
            <td>${list.getter} </td> 
            <td>${list.arriveaddress} </td> 
            <td>${list.trantype} </td> 
            <td>${list.goodsweight} </td> 
            <td>${list.aps} </td> 
            <td>${list.backmsg} </td> 
            <td>${list.ods} </td> 
    </tr>
    比如你要返回这个tr的东西,你在sevlet里面输出一段
    ordernumber|getter|arriveaddress|....|
    至于用不用json或者xml的形式随便,前台知道怎么取就OK
    ------------------
      

  4.   

    servlet里面写个xml格式的,前台去解析也可以。