由于@ViewScoped 的问题,我必须在我的 facelet 中使用 ui:repeat 而不是 c:foreach 。但是我遇到了这个问题,我想知道是否有人可以提出解决方法。
<ui:repeat value="#{someBean.idCodes}"
var="led">
<h:outputText id="mailbox-#{led}"
value="#{someBean.getSomeValue(led)}" />
</ui:repeat>
第一个问题是 #{led} 引用是 id 属性没有得到评估。所有生成的 id 属性都只是值“mailbox-”。我需要使用 document.getElementById() 找到特定的元素实例,所以我需要生成的 id 属性。
我看不到解决方法的另一个问题是,如果我将 ui:repeat 元素包装在 h:panelGrid 元素中,我最终会得到一个包含一个单元格的表格,而不是每个成员的一个单元格idCodes 集合。
使用 c:foreach 时,这些问题都不存在,但使用该标签会导致其他问题。有什么建议么?