hay algo que nunca me ha gustado de JSTL (en realidad creo que es la única cosa :)) es el hecho de que no hay manera de recuperar el tamaño de una lista/colección.
EDIT:. bien, así que era posible, pero yo no lo sabía :(see here
La etiqueta forEach
tiene el atributo varStatus
que se puede utilizar para determinar el índice de la fila (index
/count
propiedades de la variable varStatus
), sino que tiene que probar si usted está en la última posición de la lista, lo que significa que tienen el tamaño de la lista de antemano:
<c:forEach items="${fileList}" var="current" varStatus="status">
...
<c:if test="${not (status.count eq listSize)}">,</c:if>
</c:forEach>
Pero tendrá que colocar º e listSize
en alcance, manualmente, antes de hacer este tipo de cosas.
Lo que hice en uno de mis proyectos fue la creación de mi mismo una etiqueta que tiene una colección y devuelve el valor:
<myLib:collectionSize collection="${fileList}" var="listSize" />
<c:forEach items="${fileList}" var="current" varStatus="status">
...
<c:if test="${not (status.count eq listSize)}">,</c:if>
</c:forEach>
Usted podría hacer lo mismo si usted tiene este tipo de código de frecuencia (de lo contrario puede agregarlo en el alcance con lo que sea conveniente para usted).
todos los elementos que necesite el } pero el último no debe tener la coma, – nokheat