如何在 JSTL for Java JSP 中执行“嵌套 if”?

2022-09-04 06:47:38

我想做类似下面的事情:

<c:choose>
    <c:when test="${empty example1}">
    </c:when>
    <c:otherwise>
        <c:when test="${empty example2}">
        </c:when>
        <c:otherwise>
        </c:otherwise>              
    </c:otherwise>
</c:choose>

这有可能吗?我在尝试运行时遇到异常。

谢谢。


答案 1

你需要这样做,更像这样:

<c:choose>
    <c:when test="${empty example1}"> 
        <!-- do stuff -->
    </c:when> 
    <c:otherwise> 
        <c:choose>
            <c:when test="${empty example2}"> 
                <!-- do different stuff -->
            </c:when> 
            <c:otherwise> 
                <!-- do default stuff -->
            </c:otherwise>
        </c:choose>
    </c:otherwise> 
</c:choose>

这里显示的详细程度是一个很好的例子,说明为什么 XML 是实现多级条件语句的较差语言。


答案 2

您可以在 一个 中使用多个 s。<c:when><c:choose>

<c:choose>
    <c:when test="${empty example1}">
    </c:when>
    <c:when test="${empty example2}">
    </c:when>
    <c:otherwise>
    </c:otherwise>              
</c:choose>