JavaWeb——JSTL核心标签库之流程控制标签

JavaWeb——JSTL

二、使用核心标签库

3、流程控制标签

  • JSTL 核心标签库提供了**<c:if>、<c:choose>、<c:when> 和 <c:otherwise>** 共四个标签用于控制流程。

3.1、<c:if>

  • 该标签为条件判断标签,根据不同的条件处理不同的业务,其语法格式如下:
    <c:if test="condition" var="name"[scope="scope"]/>
    <c:if test="condition" var="name" [scope="scope"]>
    	expression
    </c:if>
    
  • test:指定条件表达式,支持 EL。
  • var:用于指定保存 test 属性的判断结果的变量名。
  • 示例
    <h2>1、&lt;c:if&gt;</h2>
    <c:if var="key" test="${empty param.agent}">
        <form name="form" method="post" action="">
            <label for="agent">姓名:</label><input type="text" name="agent" id="agent">
            <br>
            <br>
            <input type="submit" name="Submit" value="确认">
        </form>
    </c:if>
    <c:if test="${!key}">
        <b>${param.agent}</b>欢迎!
    </c:if>
    
  • 效果如下:
    在这里插入图片描述
    在这里插入图片描述

3.2、<c:choose>

  • <c:choose> 标签只能作为 <c:when> 和 <c:otherwise> 的子标签,其语法格式如下:
    <c:choose>
    	<c:when>
    		标签体
    	</c:when>
    	<c:otherwise>
    		标签体
    	</c:otherwise>
    </c:choose>
    
  • 示例:
    <h2>2、&lt;c:choose&gt;</h2>
    <c:choose>
        <c:when test="${empty param.str}">
            <form name="form1" method="post" action="">
                <label for="str">搜索条件:</label><input type="text" name="str" id="str">
                &nbsp;&nbsp;
                <input type="submit" value="搜索">
            </form>
        </c:when>
        <c:otherwise>
            ${param.str} 所得的搜索结果:
        </c:otherwise>
    </c:choose>
    

3.3、<c:when> 和 <c:otherwise>

  • <c:when> 示例如下:
    <h2>3、&lt;c:when&gt;</h2>
    <c:set var="hour">
        <%=new java.util.Date().getHours()%>
    </c:set>
    <c:set var="second">
        <%=new java.util.Date().getMinutes()%>
    </c:set>
    <c:choose>
        <c:when test="${hour>1&&hour<6}">早上好!</c:when>
        <c:when test="${hour>6&&hour<11}">上午好!</c:when>
        <c:when test="${hour>11&&hour<17}">下午好!</c:when>
        <c:when test="${hour>17&&hour<24}">晚上好!</c:when>
    </c:choose>
    现在的时间是:${hour}:${second}
    
  • <c:otherwise> 示例如下:
    <h2>3、&lt;c:when&gt;</h2>
    <c:set var="hour">
        <%=new java.util.Date().getHours()%>
    </c:set>
    <c:set var="second">
        <%=new java.util.Date().getMinutes()%>
    </c:set>
    <c:choose>
        <c:when test="${hour>1&&hour<6}">早上好!</c:when>
        <c:when test="${hour>6&&hour<11}">上午好!</c:when>
        <c:when test="${hour>11&&hour<17}">下午好!</c:when>
        <c:when test="${hour>17&&hour<24}">晚上好!</c:when>
    </c:choose>
    现在的时间是:${hour}:${second}
    <h2>4、&lt;c:otherwise&gt;</h2>
    <%
        Random rmd = new Random();
    %>
    <c:set var="luck">
        <%=rmd.nextInt(10)%>
    </c:set>
    <c:choose>
        <c:when test="${luck==6}">恭喜!荣获一等奖!</c:when>
        <c:when test="${luck==7}">恭喜!荣获二等奖!</c:when>
        <c:when test="${luck==8}">恭喜!荣获三等奖!</c:when>
        <c:when test="${luck==9}">恭喜!荣获四等奖!</c:when>
        <c:otherwise>谢谢参与!!下次一定中奖!</c:otherwise>
    </c:choose>
    
  • 效果如下:
    在这里插入图片描述

上一篇

下一篇

发布了146 篇原创文章 · 获赞 15 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_42896653/article/details/103464718
今日推荐