it-swarm.com.de

Verwenden Sie den varStatus der JSTL forEach-Schleife als ID

Ich möchte die Anzahl aus der JSTL forEach-Schleife verwenden, aber mein Code scheint nicht zu funktionieren.

<c:forEach items="${loopableObject}" var="theObject" varStatus="theCount">
    <div id="divIDNo${theCount}">
    </div>
</c:forEach>

produziert

<div id="[email protected]" >
98
Mark W

Die von varStatus gesetzte Variable ist ein LoopTagStatus Objekt, kein int. Verwenden:

<div id="divIDNo${theCount.index}">

Zu klären:

  • ${theCount.index} Beginnt mit der Zählung bei 0, Es sei denn, Sie haben das Attribut begin festgelegt
  • ${theCount.count} Beginnt mit der Zählung bei 1
252

sie würden eines dieser verwenden:

JSTL c: forEach varStatus-Eigenschaften

Beschreibung des Eigenschafts-Getters

  • current getCurrent () Das Element (aus der Auflistung) für die aktuelle Iterationsrunde.

  • index getIndex () Der auf Null basierende Index für die aktuelle Iterationsrunde.

  • count getCount () Die einseitige Zählung für die aktuelle Iterationsrunde

  • first isFirst () Flag, das angibt, ob die aktuelle Runde der erste Durchgang durch die Iteration ist
  • last isLast () Flag, das angibt, ob die aktuelle Runde der letzte Durchgang durch die Iteration ist

  • begin getBegin () Der Wert des Attributs begin

  • end getEnd () Der Wert des End-Attributs

  • step getStep () Der Wert des step-Attributs

5

Sie können dies versuchen. ähnliches Ergebnis

 <c:forEach items="${loopableObject}" var="theObject" varStatus="theCount">
    <div id="divIDNo${theCount.count}"></div>
 </c:forEach>
3
Nathanphan

Es hat mir wirklich geholfen, IDs von showDetailItem für den folgenden Code dynamisch zu generieren.

<af:forEach id="fe1" items="#{viewScope.bean.tranTypeList}" var="ttf" varStatus="ttfVs" > 
<af:showDetailItem  id ="divIDNo${ttfVs.count}" text="#{ttf.trandef}"......>

wenn Sie diese Zeile ausführen <af:outputText value="#{ttfVs}"/> druckt das Folgende aus:

{index = 3, count = 4, last = false, first = false, end = 8, step = 1, begin = 0}

1
jyoti pani