日期:2014-05-16  浏览次数:20829 次

ajax刷新页面返回的结果是list集合
本帖最后由 showbo 于 2013-05-24 20:26:23 编辑
javascript:
<script type="text/javascript">
   $(function(){
    $(".jd").click(function(){
      $.ajax({
      type:"POST",
      data:{"side":3},
      url:"../police/inlist3.action",
      dataType:"json",
      success:function(data){
        $("#c04").empty();
       for(i=0;i<data.length;i++){
         var $tr=$('<ul><li>' +data[i].side
         + '</li><li>' +data[i].title
         + '</li><li>' +'<s:date name="new java.sql.Date(' 
         + data[i].createTime 
         +')" format="yyyy-MM-dd"/></li></ul>'
         );
      
        document.getElementById("c04").innerHTML=$tr;
        }
      }
      });
      
    });
  });
</script>
jsp:
<li><a href="#" class="jd">测试</a></li>
<div id="c04" class="hidden" style="float:left;">  </div>


struts.xml:
 <action name="inlist3" class="sdjx.action.ListInformationAction">
        <result type="json" name="json">
        </result>
      </action>

action:
JSONArray obj=JSONArray.fromObject(industrys);
 return "json";

action中industry是需要输出的list集合,要求页面显示集合中每一个实体的side,title和时间属性,其中时间属性是一个long类型的数据,需要进行转换
Ajax JSON

------解决方案--------------------
本帖最后由 showbo 于 2013-05-24 20:33:32 编辑
打印json看看结构是什么。。应该是你结构不对。。导致取出的是对象而不是值,而且你这个没报错吗?

+'<s:date name="new java.sql.Date(' 
             + data[i].createTime 
             +')"

你这句应该是服务器端的,无法直接调用客户端的内容。

dataType:"text",
          success:function(data){
alert(data)


dataType改成text,输出data看下json的结构,然后再改回去dataType为json,然后修改fo