Mudar cor da tr com JSTL

3 respostas
M

Olá pessoal,
alguém teria um exemplo de como montar uma tabela em html utilizando JSTL para que a cada iteração as tags tr possam trocar de cor?
Preciso montar esta tabela e é necessário que cada linha se destaque com uma cor diferente uma da outra.
A tabela já esta rodando o que eu preciso agora é trocar a cor da tr a cada iteração.

[]'s

3 Respostas

G

“marciolm”:
Olá pessoal,
alguém teria um exemplo de como montar uma tabela em html utilizando JSTL para que a cada iteração as tags tr possam trocar de cor?
Preciso montar esta tabela e é necessário que cada linha se destaque com uma cor diferente uma da outra.
A tabela já esta rodando o que eu preciso agora é trocar a cor da tr a cada iteração.

[]'s

Olá…

Existe um atributo chamado varStatus da taglib de iteração foreach que pode te ajudar:

<c:forEach var="blah" items="${lista}" varStatus="contador"> <c:if test="${contador.count % 2 == 0}"> <tr bgcolor="gray"> </c:if> <c:if test="${contador.count % 2 == 1}"> <tr bgcolor="WhiteSmoke"> </c:if> <td> <div align="center"> ${blah.nome} </div> </td> <td> ${blah.idade} </td> <td> </tr> </c:forEach>

:wink:

M

Olá Guilherme,
Primeiramente gostaria de lhe dizer que o seu tutorial de JSTL esta me ajudando bastante!
Logo que postei a mensagem eu escrevi a seguinte solução:

<c:set var="count" scope="request" value="0"/>
<c:set var="color" scope="request" value="#f6f6f6"/>

<c:forEach var="arquivo" items="${arquivos}">
<c:choose >
    <c:when test="${count == 0}">
         <c:set var="color" scope="request" value="#f6f6f6"/>
         <c:set var="count" scope="request" value="1"/>
    </c:when>
    <c:otherwise >
         <c:set var="count" scope="request" value="0"/>
         <c:set var="color" scope="request" value="#ffffff"/>
    </c:otherwise>
</c:choose>
				
<tr>
        <td bgcolor="<c:out value="${color}"/>" height="25"> <img src="imagens/icon-date.gif" align="absMiddle"> </td>
        <td align="center" bgcolor="<c:out value="${color}"/>" height="25"><c:out value="${arquivo.arquivoId}"/></td>
        <td align="left" bgcolor="<c:out value="${color}"/>" height="25"><c:out value="${arquivo.arquivoNome}"/></td>
        <td align="left" bgcolor="<c:out value="${color}"/>" height="25"><c:out value="${arquivo.extensaoNome}"/></td>
</tr>
<tr>
        <td bgcolor="#888888" colspan="4" height="1"><img height="1"    src="imagens/break.gif" width="100%"></td>
</tr>
			
</c:forEach>

Mas com certeza a sua solução é bem mais elegante e já estou mudando para ela.
Obrigado pela ajuda.

G

Olá marciolm !!!

“marciolm”:
Olá Guilherme,
Primeiramente gostaria de lhe dizer que o seu tutorial de JSTL esta me ajudando bastante!

Legal… :mrgreen:

Criado 21 de agosto de 2005
Ultima resposta 21 de ago. de 2005
Respostas 3
Participantes 2