Esiste un tag if-else disponibile in JSTL?
Esiste un tag if-else disponibile in JSTL?
Risposte:
Sì, ma è ingombrante da morire, ad es
<c:choose>
<c:when test="${condition1}">
...
</c:when>
<c:when test="${condition2}">
...
</c:when>
<c:otherwise>
...
</c:otherwise>
</c:choose>
<c:if/>
allora.
<c:otherwise>
sembra un po' prolisso, eh?
Non c'è if-else, solo se.
<c:if test="${user.age ge 40}">
You are over the hill.
</c:if>
Opzionalmente puoi usare scegli quando:
<c:choose>
<c:when test="${a boolean expr}">
do something
</c:when>
<c:when test="${another boolean expr}">
do something else
</c:when>
<c:otherwise>
do this when nothing else is true
</c:otherwise>
</c:choose>
Sono riuscito a usare semplicemente due tag if, ho pensato di aggiungere una risposta nel caso in cui fosse utile a chiunque altro:
<c:if test="${condition}">
...
</c:if>
<c:if test="${!condition}">
...
</c:if>
sebbene tecnicamente non sia di if-else
per sé, il comportamento è lo stesso ed evita l'approccio goffo dell'uso del choose
tag, quindi a seconda di quanto sia complesso il tuo requisito potrebbe essere preferibile.
choose
tag.
devi usare questo codice:
con <%@ taglib prefix="c" uri="http://www.springframework.org/tags/form"%>
e
<c:select>
<option value="RCV"
${records[0].getDirection() == 'RCV' ? 'selected="true"' : ''}>
<spring:message code="dropdown.Incoming" text="dropdown.Incoming" />
</option>
<option value="SND"
${records[0].getDirection() == 'SND'? 'selected="true"' : ''}>
<spring:message code="dropdown.Outgoing" text="dropdown.Outgoing" />
</option>
</c:select>
Questo è un approccio valido ed efficiente per quanto riguarda la prospettiva della complessità temporale. Una volta che avrà una vera condizione, non controllerà nessun altro dopo questo. In più If, controllerà ciascuno e le condizioni.
<c:choose>
<c:when test="${condtion1}">
do something condtion1
</c:when>
<c:when test="${condtion2}">
do something condtion2
</c:when>
......
......
......
.......
<c:when test="${condtionN}">
do something condtionn N
</c:when>
<c:otherwise>
do this w
</c:otherwise>
</c:choose>