Answers:
由set设置的变量varStatus
是LoopTagStatus
对象,而不是int。用:
<div id="divIDNo${theCount.index}">
澄清:
${theCount.index}
开始于 0
除非您已设置begin
属性否则${theCount.count}
开始于 1
${theCount.count}
总是从1 ${theCount.index}
开始。从您设置begin
属性的位置开始。例如<c:forEach var="foo" items="${bar}" begin="5" varStatus="theCount">
您可以使用以下任何一种:
JSTL c:forEach varStatus属性
属性获取器说明
current getCurrent()当前迭代的项目(来自集合)。
index getIndex()当前迭代的从零开始的索引。
count getCount()当前一轮迭代的基于一的计数
last isLast()标志,指示当前回合是否是迭代中的最后一次传递
begin getBegin()begin属性的值
end getEnd()end属性的值
step getStep()step属性的值
它确实帮助我showDetailItem
为以下代码动态生成ID 。
<af:forEach id="fe1" items="#{viewScope.bean.tranTypeList}" var="ttf" varStatus="ttfVs" >
<af:showDetailItem id ="divIDNo${ttfVs.count}" text="#{ttf.trandef}"......>
如果执行此行,则<af:outputText value="#{ttfVs}"/>
打印以下内容:
{index = 3,count = 4,last = false,first = false,end = 8,step = 1,begin = 0}
varStatus.count
)已经提供的完全相同的答案,只是可读性差得多。为什么要烦恼阅读别人的答案?;)
getIndex()
:)