JSTL 的 if else : 有 c:if 没有 else 的处理

发表于: java/j2ee | 作者: darkmi | 日期: 2015/06/17 08:00
标签: JSTL
字号:

jstl的c:if 没有else

想要实现if…else…:

可以用下面的解决

-—————————————————————––

结构:

<c:choose>
<c:when test="">    如果
</c:when>
<c:otherwise>  否则
</c:otherwise>
</c:choose>

代码:

<c:choose>
<c:when test="${sessionScope.USERTYPE == 'inner'}">
<c:set value="${context_root}/igmgr/MEB004.dow" var="action" scope="page"/>
</c:when>
<c:when test="${sessionScope.USERTYPE == 'merc'}">
<c:set value="${context_root}/igmgr/MEB021.dow" var="action" scope="page"/>
</c:when>
<c:otherwise>
<c:set value="${context_root}/igmgr/MEB020.dow" var="action" scope="page"/>
</c:otherwise>
</c:choose>

-————————————————————————

附:详解+代码

在同一个 中,当所有 的条件都没有成立时,则执行 的本体内容。

语法

<c:otherwise>
本体内容
</c:otherwise>

属性

无

限制

必须在 和 之间

在同一个 中时, 必须为最后一个标签

说明

在同一个 中,假若所有 的test属性都不为true时,则执行 的本体内容。

范例

笔者举一个典型的 、和范例:

<c:choose>
<c:when test="${condition1}">
condition1为true
</c:when>
<c:when test="${ condition2}">
condition2为true
</c:when>
<c:otherwise>
condition1和condition2都为false
</c:otherwise>
</c:choose>

范例说明:当condition1为true时,会显示“condition1为true”;当condition1为false且condition2为true时,会显示“condition2为true”,如果两者都为false,则会显示“condition1和condition2都为false”。

注意

假若condition1和condition2两者都为true时,此时只会显示“condition1为true”,这是因为在同一个下,当有好几个都符合条件时,只能有一个成立。

整理自网络。

切换主题切换主题
返回顶部