JSTLでif else 文、<c:if>の使い方

<c:if>タグの引数

  • test: 条件式を入れる。
  • var: 条件式の判定結果を代入する変数名(省略可)
  • scope: varで指定した変数のスコープ(省略可)
    スコープはpage、request、session、applicationの4種類が指定可能

JSTLでif文

サンプルコード

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>c:IFサンプル</title>
</head>
<body>
<%session.setAttribute("count", "5");%>
<c:if test="${4 <= count}">
<c:out value="${count}" />は4以上。
</c:if>
<c:if test="${6 <= count}">
<c:out value="${count}" />は6以上。
</c:if>
</body>
</html>

実行結果

jstl1

引数varで指定した変数にif文の判定結果を格納できる

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>c:IFサンプル2</title>
</head>
<body>
<%session.setAttribute("count", "5");%>
<c:if test="${4 <= count}" var="flag">
<c:out value="${count}" />は4以上。<br />
</c:if>
flagは<c:out value="${flag}" />。<br />
<c:if test="${6 <= count}" var="flag">
<c:out value="${count}" />は6以上。<br />
</c:if>
flagは<c:out value="${flag}" />。
</body>
</html>

実行結果

jstl2

コメント

タイトルとURLをコピーしました