如何使用 rich:dataTable 生成具有动态列的表?

发布于 2024-12-19 21:49:59 字数 130 浏览 4 评论 0 原文

我必须使用 JSF 生成动态表。我有一个包含标题的数组列表和另一个包含用于保存实际数据的字符串列表的列表 - 主列表中的每个条目代表一行。是否可以使用 rich:datatable 生成动态表? rich:columns 是一个可以考虑的选项吗?

I have to generate a dynamic table using JSF. I have a arraylist containing headers and another list containing list of strings for holding the actual data - each entry in the main list representing a row. Is it possible to generate a dynamic table using rich:datatable? Is rich:columns an option to be considered?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

满天都是小星星 2024-12-26 21:49:59

这段代码有效 -

<rich:dataTable 
        value="#{dataBean.getAttributeDetail().getAttributeRows()}" 
        var="dataValues" width="100%" border="1">
   <rich:columns 
            value="#{dataBean.getAttributeDetail().getAttributeHeaders()}" 
            var="columns" index="ind" id="column#{ind}">
       <f:facet name="header">
           <h:outputText value="#{columns}" />
       </f:facet>
       <h:outputText value="#{warningValues[ind]} " />
    </rich:columns>
</rich:dataTable>

This code works -

<rich:dataTable 
        value="#{dataBean.getAttributeDetail().getAttributeRows()}" 
        var="dataValues" width="100%" border="1">
   <rich:columns 
            value="#{dataBean.getAttributeDetail().getAttributeHeaders()}" 
            var="columns" index="ind" id="column#{ind}">
       <f:facet name="header">
           <h:outputText value="#{columns}" />
       </f:facet>
       <h:outputText value="#{warningValues[ind]} " />
    </rich:columns>
</rich:dataTable>
另类 2024-12-26 21:49:59

如果您使用的是 RichFaces 4,它仍然不支持“rich:columns”,因此请使用“c:forEach”,如下所示:

<rich:dataTable value="#{teamHandler.mitarbeiter}" var="m">
   <rich:column>
      <f:facet name="header">Mitarbeiter</f:facet>
      <h:outputText value="#{m.name}" />
   </rich:column>
   <c:forEach items="#{datumsHandler.span}" var="d">
      <rich:column>
         <f:facet name="header">
            <h:outputText value="d" />
         </f:facet>
         <h:outputText value="-" />
      </rich:column>
   </c:forEach>
</rich:dataTable>

更多信息 此处

If you are using RichFaces 4, it still does not support "rich:columns", so instead use "c:forEach", like this:

<rich:dataTable value="#{teamHandler.mitarbeiter}" var="m">
   <rich:column>
      <f:facet name="header">Mitarbeiter</f:facet>
      <h:outputText value="#{m.name}" />
   </rich:column>
   <c:forEach items="#{datumsHandler.span}" var="d">
      <rich:column>
         <f:facet name="header">
            <h:outputText value="d" />
         </f:facet>
         <h:outputText value="-" />
      </rich:column>
   </c:forEach>
</rich:dataTable>

More information here.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文