2014-09-02 33 views
1

我有一個列表來自數據庫的java對象作爲對象的ArrayList。我必須通過ajax顯示在jsp頁面中。我知道如何顯示在通過jsp頁面阿賈克斯字符串的ArrayList的,但我必須爲我所爲字符串列表進行object.Here的名單做同樣的..如何將java對象列表轉換爲JSON並通過AJAX顯示

List<String> UnUsedStpCodeList=userService.getUnUsedSTPCodeList(100);     
JSON json = JSONSerializer.toJSON(UnUsedStpCodeList);     
PrintWriter out = response.getWriter(); 
out.print(json.toString()); 
System.out.println("json:" + json.toString()); 
response.setContentType("application/json");; 

這串名單這我得到來自數據庫。

var WindowHeader = "STP CODE LIST"; 
var htmlContent = $("#dashBoardDetails"); 
var myTable = "<table>"; 

$.ajax({ 
    url: "getDashBoardData.do?method=getUnUsedSTPCode", 
    type: 'POST', 
    cache: false, 
    dataType: 'json', 
    data: { 
    "storeId": id 
    }, 
    beforeSend: function() { 

    }, 
    success: function(data, textStatus, xhr) { 
    $.each(data, function(i, obj) { 
     myTable += "<tr><td>" + obj + "</td></tr>"; 
    }); 
    myTable += "</table>"; 
    htmlContent.append(myTable); 
    openWindow(WindowHeader); 
    }, 
    error: function(xhr, textStatus, errorThrown) { 
    alert('error'); 
    } 
}); 

這就是我如何在jsp頁面中顯示它們。 現在我有

List<DashboardUserDetailsObject> registeredUserDetailsList = userService.getRegisteredDraftUserList(storeId,status); 
JSON json = JSONSerializer.toJSON(registeredUserDetailsList); 
PrintWriter out = response.getWriter(); 
out.print(json.toString()); 

其中registeredUserDetailsList是其中包含的信息的對象的列表。
如何通過ajax在jsp頁面中顯示它們?

回答

1

在JavaScript中,您可以使用點語法訪問對象屬性。由於您的JSON將被解析成JavaScript對象你可以做類似如下:(?registereduser)

$.each(data, function(i, obj) { 
    myTable += "<tr><td>"+obj.value1+"<//td><td>"+obj.value2+"<//td><//tr>";         
}); 

這是假設你的對象具有的屬性value1value2