2012-12-02 87 views
0

我正在使用portlet和spring MVC。我想通过ajax调用来获取项目列表,并使用该列表作为display:table属性。使用ajax调用填充显示表

我用这个AJAX调用:

jQuery.ajax({ url:'<portlet:resourceURL id="recuperarDatosAF"> 
</portlet:resourceURL>', data: {idExpediente:expediente}, type: 'POST', 
    datatype:'json', success: function(data) { 
     alert(data); 
    } 

该调用是执行的每个用户选择一个组合的项目的时间。每次恢复的项目列表。

我的问题是:如何才能生成displaytable我刚刚得到的列表?

有一种方法来更新显示:在jsp中使用该列表定义的表格?

我定义的显示检索requestScope的列表,但我想用ajax调用检索列表。

我显示:表:

 <display:table id="docentes" name="${requestScope.docentesList}"      
              htmlId="resultadosDocentesListTable" 
              pagesize="4" 
              class="displayTagTable" 
              uid="docente"> 
+0

数据包含,HTML/JSON? – anderssonola

+0

数据包含json。 – user1821460

+0

好的我有点不清楚,返回的json对象是怎么样的,你想如何呈现它? @ Chipmunk0110建议以下接缝解决您描述的问题。 – anderssonola

回答

0

http://jsfiddle.net/kVdZG/

脚本来从JSON数据表,使用此代码替换警报(数据),在这里data.scores是我的数据

var data = { "scores" : [ ["3/1/2011", 610],["4/1/2011", 610],["5/1/2011", 610],["6/1/2011", 610], ["7/1/2011", 720], ["8/1/2011", 500], ["9/1/2011", 500] ] } 



$(data.scores).each(function(index, element){ 
     $('#scores').append('<tr><td> '+element[0]+' </td> <td> '+element[1]+' </td></tr>');  
    }) 
+0

感谢您的回答 我已经知道如何通过注入html代码来构建表格,但想知道您是否可以生成display:table或升级到从调用中获取的列表。我使用jsp displaytag。 – user1821460

0

我的问题是:如何才能生成可显示的列表,我刚刚得到?

从我的经验,你的列表必须包含地图JSON数据例如:

Map productMap = new HashMap(); 

    productMap.put("id", "1"); 
    productMap.put("name", "Coca Cola");     

    List<Product> productList = new ArrayList<Product>(); 
    productList.add(productMap); 

    jsonWriter.object() 
     .key("status").value(true)     
     .key("pList").value(productList) 
     .endObject(); 

plist中是包含地图产品。

有一种方法可以更新在jsp中使用该列表定义的display:table吗?

是的,我检查显示表标签部分使用萤火虫后,我发现显示表标签将更改为正常的HTML表。因此,在阿贾克斯

success: function(data){ 
    if(data.status == true){ 
     var strHtml='';     
     for(var i=0;i<data.pList.length;i++){ 
     strHtml+='<tr><td>'"+data.pList[i].name+"'</td></tr>'; 
     } 
    jQuery("table#docentes tbody").html(strHtml); 
    }     

}, 

和你显示标签

<display:table id="docentes" pagesize="4" class="displayTagTable" uid="docente"> 
    <display:column escapeXml="true" title="Product Name" > 
    </display:column>                     
</display:table> 
+0

只有在显示标签已经生成时才会附加到表格中,分页已被移除,这违背了显示标签的用途 – mel3kings