如何从服务器返回Json数组

时间:2013-06-06 08:43:20

标签: ajax json

我有类似的代码

function loadAjaxData(code) {
$.ajax({
                type : 'POST',
                url : 'loadData.html',
                dataType : 'json',
                data : {
                    "limited_num" : limited_num,
                    "search_bunrui_code" : code,
                    "orderType" : orderType,
                    "search_base_date_from" : search_base_date_from,
                    "search_base_date_to" : search_base_date_to,
                    "compare_date_from" : compare_date_from,
                    "compare_date_to" : compare_date_to
},
success : function(data) {
},
});

我知道上面的数据是将param传递给服务器。并在服务器中为我返回一个Json的数组对象 问题是如何在成功中获得该阵列 感谢您的帮助

这是服务器中的代码

 @Result(name="loadData",type="json"),

public ArrayList<OrderDeliverAmoutReturnList> returnList;

@Action(value="loadData", results = {
                @Result(name="loadData", type="json", params ={"includeProperties", "returnList"})
            })
    public String loadData() throws Exception{
        OrderDeliverAmoutSearchTO searchTo=this.setCondition();
        returnList=bunruiSummaryService.getBunruiSyouhinShopDayList(searchTo);
        total=this.caculateTotal();

        return "loadData";
    }

3 个答案:

答案 0 :(得分:1)

如果您从服务器发送带有json类型头的json数据,那么您可以在success方法中的数据变量中直接获取json对象。

您可以使用的服务器的text / html标题。

var jsonObject = $.parseJSON(data)

在jsonObject中获取json或数组。

答案 1 :(得分:0)

它位于成功回调中的data变量中:function(data) { }

答案 2 :(得分:0)

这里,'data'本身就是json对象。如果它是数组,你可以像

一样使用它
success : function(data) {
  for(int i=0;i< data.length;i++){
    alert(data[i]);//use it
  }
}