日期:2014-05-16 浏览次数:20417 次
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:choose> 中,当所有 <c:when> 的条件都没有成立时,则执行 <c:otherwise> 的本体内容。
语法
<c:otherwise>
本体内容
</c:otherwise>
属性
无
限制
·<c:otherwise> 必须在 <c:choose> 和 </c:choose>之间
·在同一个 <c:choose> 中时,<c:otherwise> 必须为最后一个标签
说明
在同一个 <c:choose> 中,假若所有 <c:when> 的test属性都不为true时,则执行 <c:otherwise> 的本体内容。
范例
笔者举一个典型的 <c:choose>、<c:when>和<c:otherwise>范例:
<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",这是因