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: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.cdsy.xyz)</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>
页面输出如下: