【发布时间】:2012-01-13 03:05:30
【问题描述】:
我有一个带有以下代码的 JSF 2 应用程序:
<c:set var="number" value="0" scope="view" />
<ui:repeat value="${items}" var="item" varStatus="itemIndex">
<c:if test="${item.boolProperty == true}">
<c:set var="number" value="${number + 1}" scope="view" />
</c:if>
<h:outputText value="#{item.name}" />: <h:outputText value="#{number}" />
</ui:repeat>
我想根据循环中项目的属性增加数量。但是,条件似乎不起作用,因为 number 的值始终保持为 0。如果我删除条件,number 只会增加一次,或者在增加之前它始终为 0,因此它输出 1。可以吗number var 的变化是否可能不会影响循环外的 number var?我相信scope 属性可以解决这个问题。
【问题讨论】:
标签: jsf jstl facelets uirepeat