我想为<div>
中的<c:forEach>
分配一个唯一ID。每当呈现页面时,<div>
生成的所有<c:forEach>
都具有相同的ID。有没有办法为<c:forEach>
生成的所有div分配唯一ID?我尝试过使用<ui:repeat>
,但我遇到了问题所以我决定坚持使用<c:forEach>
。
的facelet:
<c:forEach var="p" items="#{statusBean.statusList}">
<h:form>
<div class="status">
// Content
</div>
</h:form>
</c:forEach>
答案 0 :(得分:7)
使用c:forEach
属性varStatus
定义包含the status of the loop的变量。然后您可以在模板中使用它,如下所示:
<c:forEach var="p" items="#{statusBean.statusList}" varStatus="loop">
<h:form>
<div class="status_#{loop.count}">
// Content
</div>
</h:form>
</c:forEach>
如果您希望以0开始,也可以使用#{loop.index}
。
答案 1 :(得分:0)
尝试使用<h:panelGroup>
或其他JSF组件来渲染div。
这将导致为您生成唯一ID。