2012-01-16 22 views
6

¿Existe una característica incorporada en JSTL para generar separadores mientras se hace foreach?JSTL para cada separador

La tarea es generar separadores (como comas) después de cada iteración excepto la última (o antes de cada una excepto la primera). ¿Hay alguna etiqueta ELSE para foreach?

Respuesta

16

utilizar el atributo varStatus, que hace referencia a un objeto de tipo LoopTagStatus:

<c:forEach var="foo" items="${foos}" varStatus="loopStatus"> 
    <c:out value="${foo}"/> 
    <c:if test="${!loopStatus.last}"> | </c:if> 
</c:forEach> 
5
<c:forEach items="${myList}" var="item" varStatus="status"> 
    ${item}<c:if test="${not status.last}">,</c:if> 
</c:forEach> 
3

Es posible utilizar atributo `varStatus' en EL,

<c:forEach var="foo" items="${foos}" varStatus="loopStatus">${foo}${!loopStatus.last?',':''}</c:forEach>`