varstatus java jsp jstl el

java - varstatus - jstl foreach list



Use JSTL para cada varStatus de bucle como ID (4)

La variable establecida por varStatus es un objeto download.oracle.com/javaee/6/api/javax/servlet/jsp/jstl/core/… , no un int. Utilizar:

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

Para aclarar:

  • ${theCount.index} comienza a contar a 0
  • ${theCount.count} comienza a contar a 1

Quiero usar el recuento de JSTL para cada ciclo, pero parece que mi código no funciona.

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

produce

<div id="divIDNojavax.servlet.jsp.jstl.core.LoopTagSupport$1Status@5570e2" >


Puedes probar esto. resultado similar

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


Realmente me ayudó a generar dinámicamente identificadores de showDetailItem para el código siguiente.

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

si ejecuta esta línea <af:outputText value="#{ttfVs}"/> imprime lo siguiente:

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


usarías cualquiera de estos:

JSTL c: para cada propiedad varStatus

Property Getter Descripción

  • current getCurrent () El elemento (de la colección) para la ronda de iteración actual.

  • índice getIndex () El índice basado en cero para la ronda de iteración actual.

  • count getCount () El recuento basado en uno para la ronda de iteración actual

  • primero isFirst () Bandera que indica si la ronda actual es la primera pasada a través de la iteración
  • last is Last () Bandera que indica si la ronda actual es la última pasada a través de la iteración

  • begin getBegin () El valor del atributo begin

  • end getEnd () El valor del atributo final

  • step getStep () El valor del atributo step