<c:choose><c:when>和<c:otherwise>标签
JSTL <c:choose>、<c:when>和<c:otherwise>标签类似于 Java 中的 switch-case 和 default 语句,可以从多个语句块中选择其中的一个执行。
页面输出如下:
语法
JSP <c:choose>、<c:when>和<c:otherwise>标签语法如下:<c:choose> <c:when test="表达式1"> // 表达式1为true时执行的代码块 </c:when> <c:when test="表达式2"> // 表达式2为true时执行的代码块 </c:when> <c:otherwise> // 表达式都为false时执行的代码块 </c:otherwise> </c:choose>其中:
- <c:choose> 是父标签,相当于 Java Switch;
- <c:when> 和 <c:otherwise> 是 <c:choose> 的子标签,可以有 0 个或多个。<c:when> 相当于 Java case,<c:otherwise> 相当于 Java default;
- <c:when> 标签必须位于 <c:otherwise> 标签之前,<c:when> 中的判断语句都为假时,才会执行 <c:otherwise> 中的内容。
注意:当多个 <c:when> 标签中的判断语句为 true 时,只会执行第一个判断语句为 true 的<c:when> 中的内容。
示例
下面为 <c:choose>、<c:when>和<c:otherwise>标签的简单实例。<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <!DOCTYPE html> <html> <head> <title>编程帮(www.biancheng.net)</title> </head> <body> <body> <c:set var="num1" value="${222}" /> <c:set var="num2" value="${12}" /> <c:set var="num3" value="${10}" /> <c:choose> <c:when test="${num1 < num2}"> num1小于num2 </c:when> <c:when test="${num1 <= num3}"> num1小于等于num3 </c:when> <c:otherwise> num1是最大的数字 </c:otherwise> </c:choose> </body> </html>
页面输出如下:
num1是最大的数字