1

我正在尝试<h:dataTable>使用两个列表创建一个。一个列表包含列名,另一个包含将填充表的数据。我需要包含列名的列表,因为第二个数据的属性比我想显示的要多。我怎样才能做到这一点?

4

1 回答 1

5

是的,如果您使用<c:forEach>迭代列名并<h:column>生成<h:dataTable>. 您可以在 EL 中使用大括号表示法[]将列名称用作“动态”bean 属性名称(甚至用作Map键)。

<h:dataTable value="#{bean.rows}" var="row">
    <c:forEach items="#{bean.columnNames}" var="columnName">
        <h:column>#{row[columnName]}</h:column>
    </c:forEach>
</h:dataTable>
于 2013-09-17T13:27:49.007 回答