【问题标题】:Iterate over list of maps using nested ui:repeat使用嵌套的 ui:repeat 遍历地图列表
【发布时间】:2014-08-08 13:48:03
【问题描述】:

我有一个映射列表,每个映射包含多个值List<Map<Integer, String>> recordsList 我需要做的是遍历列表并遍历每个映射中的每个值以形成一个表,这是我的代码

<table>
  <tr>
    <ui:repeat id="record-table" var="c" value="#{Bean.recordsList}">
        <tr>
          <ui:repeat var="m" value="#{c.values}">
            <td>#{m}</td>
          </ui:repeat>
        </tr>
    </ui:repeat>
   </tr> 
</table>

我的问题是这不起作用,如何使它起作用?提前致谢。

【问题讨论】:

    标签: java jsf-2


    【解决方案1】:

    您不能直接使用带有 ui:repeat 的地图。

    您可以像这样输出键和值:

    <ui:repeat var="key" value="#{c.values.keySet().toArray()}">
        <td>key:#{key}</td>
        <td>value:#{c.values.get(key)}</td>
    </ui:repeat>
    

    【讨论】:

    • 不幸的是它也不行
    【解决方案2】:

    不幸的是 ui:repeat 不支持对地图的迭代。 点击链接了解更多详情: ui:repeat doesn't work with Map

    【讨论】:

    • 好的,h:dataTable 可以吗? ,我必须动态查看excel表,不知道数字或列
    • 也不支持。你需要在地图上包裹一个列表来这样做
    • 如果我将地图更改为 list ,那么它将是 List&lt;List&lt;String&gt;&gt; myList 会起作用吗??
    • ui:repeat 或 h:datatable 始终与列表项一起使用。可能尝试使用 List>
    猜你喜欢
    • 2016-10-14
    • 2021-08-29
    • 1970-01-01
    • 1970-01-01
    • 2019-08-22
    • 1970-01-01
    • 2015-05-16
    • 1970-01-01
    相关资源
    最近更新 更多