【问题标题】:iterate over properties with ui:repeat [duplicate]使用 ui:repeat 遍历属性 [重复]
【发布时间】:2018-07-20 15:24:21
【问题描述】:

从一个 xhtml 页面,有没有可能是这样的?

<tbody>
<ui:repeat value="#{listOfObject}" var="obj">
            <tr>
                <ui:repeat value="#{propertiesOfObject}" var="prop">
                    <td>#{obj.prop}</td>
                </ui:repeat>
            </tr>
</ui:repeat>
</tbody>

换句话说,我想得到一个表,其中列和行都是参数。我找不到访问“obj.prop”的方法。

【问题讨论】:

  • 对 ui:repeat 没有太多经验,但我相信你的 var 将是对象的变量名,所以我想你会想在 el 中做 #{prop.nameOfPropertyOnThisObject}
  • 等一下#{propertiesOfObject} 是收藏吗?因为如果不是,我认为你不能像那样迭代它
  • 是的,但是点符号不起作用。现在问题解决了,还是谢谢你。

标签: jsf xhtml


【解决方案1】:

确保#{propertiesOfObject} 是属性名称的列表(如果需要,通过反射构建)并使用

#{obj[prop]}

另见

【讨论】:

  • propertiesOfObject 确实是通过 Bean 内的反射构建的属性名称列表。它奏效了,谢谢。关于与链接问题的相似性,本案例不涉及jsp文件。干杯。
  • 学会思考通用问题。不要将事情“缩小”太多,这样更容易找到解决方案。问题/问题在 EL 中,而不是 JSF 中(jsf 也可以使用 JSP)。
猜你喜欢
  • 2014-09-28
  • 1970-01-01
  • 2021-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多