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

use*_*616 12 java jsp jstl

我想做类似以下的事情:

<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>
Run Code Online (Sandbox Code Playgroud)

这甚至可能吗?我试图运行时抛出一个异常.

谢谢.

aro*_*oth 18

你需要更像这样做:

<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>
Run Code Online (Sandbox Code Playgroud)

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


Bal*_*usC 10

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

<c:choose>
    <c:when test="${empty example1}">
    </c:when>
    <c:when test="${empty example2}">
    </c:when>
    <c:otherwise>
    </c:otherwise>              
</c:choose>
Run Code Online (Sandbox Code Playgroud)