如何在JSTL中使用if-else选项
JSTL中是否有if-else标签?
是的,但像地狱一样笨重,例如
<c:choose> <c:when test="${condition1}"> ... </c:when> <c:when test="${condition2}"> ... </c:when> <c:otherwise> ... </c:otherwise> </c:choose>
对于简单的if-else,你可以像这样使用三元运算符
<c:set value="34" var="num"/> <c:out value="${num % 2 eq 0 ? 'even': 'odd'}"/>
没有if,否则,如果。
<c:if test="${user.age ge 40}"> You are over the hill. </c:if>
或者,您可以使用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>
我简单地使用了两个if标签,以为我会添加一个答案,以防其他人使用。
<c:if test="${condition}"> ... </c:if> <c:if test="${!condition}"> ... </c:if>
尽pipe技术上不是if-else
本身,但其行为是相同的,并且避免了使用choose
标签的笨重方法,所以取决于您的要求有多复杂,这可能是优选的。
你必须使用这个代码:
<%@ taglib prefix="c" uri="http://www.springframework.org/tags/form"%>
和
<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>