Comment utiliser l'option if-else dans JSTL
5 réponses
Oui, mais c'est maladroit comme l'enfer, par exemple
<c:choose>
<c:when test="${condition1}">
...
</c:when>
<c:when test="${condition2}">
...
</c:when>
<c:otherwise>
...
</c:otherwise>
</c:choose>
481
répondu
skaffman
2011-01-03 19:05:26
Pour de simples si-sinon vous pouvez utiliser l'opérateur ternaire comme ceci
<c:set value="34" var="num"/>
<c:out value="${num % 2 eq 0 ? 'even': 'odd'}"/>
95
répondu
laksys
2012-11-07 04:11:53
Il n'y a pas si-sinon, juste si.
<c:if test="${user.age ge 40}">
You are over the hill.
</c:if>
Vous pouvez éventuellement utiliser choose-when:
<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>
42
répondu
Menuka Ishan
2016-05-19 06:26:31
J'ai simplement utilisé deux balises if, pensé que j'ajouterais une réponse au cas où elle serait utile à quelqu'un d'autre:
<c:if test="${condition}">
...
</c:if>
<c:if test="${!condition}">
...
</c:if>
Bien que techniquement pas un if-else
en soi, le comportement est le même et évite l'approche maladroite de l'utilisation de la balise choose
, donc en fonction de la complexité de votre exigence, cela pourrait être préférable.
19
répondu
jonk
2016-02-19 19:16:34
, Vous devez utiliser ce code:
Avec <%@ taglib prefix="c" uri="http://www.springframework.org/tags/form"%>
Et
<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>
1
répondu
ankit
2017-10-27 13:18:23