`

JSTL的 if else : 有 c:if 没有 else 的处理

阅读更多

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",这是因为在同一个<c:choose>下,当有好几个<c:when>都符合条件时,只能有一个<c:when>成立

分享到:
评论

相关推荐

    jsp之ifelse与遍历代码

    在JavaServer Pages (JSP) 中,`if-else` 和遍历是两种常见的控制流程语句,它们在网页动态生成和数据处理中扮演着重要角色。`if-else` 用于条件判断,而遍历则常用于处理数组、集合或数据库记录等数据结构。 `if-...

    JSTL中文帮助文档

    - `&lt;c:if&gt;` 和 `&lt;c:choose&gt;`:条件判断标签,类似于编程语言中的 if-else 语句。 - `&lt;c:forEach&gt;` 和 `&lt;c:forTokens&gt;`:循环标签,处理数组、集合和字符串。 - `&lt;c:redirect&gt;` 和 `&lt;c:forward&gt;`:处理请求重定向...

    jstl两个核心包和jstl标签库EL表达式详解

    - **&lt;c:if&gt; 和 &lt;c:choose&gt;**:用于条件判断,类似Java中的if-else语句。 - **&lt;c:forEach&gt;**:用于遍历集合,如数组、列表、Map等。 - **&lt;c:set&gt;**:用于设置变量。 - **&lt;c:out&gt;**:用于安全地输出数据,防止XSS攻击...

    第8章 JSTL.ppt

    - `&lt;c:choose&gt;`、`&lt;c:when&gt;`和`&lt;c:otherwise&gt;`:它们一起使用,可以实现类似于if-else语句的功能。`&lt;c:choose&gt;`包含多个`&lt;c:when&gt;`标签,每个`&lt;c:when&gt;`测试一个条件,如果满足则执行相应代码;如果没有匹配的条件...

    jstl入门标签手册

    3. `&lt;c:choose&gt;`, `&lt;c:when&gt;`, `&lt;c:otherwise&gt;`:这组标签可以实现多条件分支,类似于Java的`if...else if...else`结构: ```jsp &lt;c:set var="str1" value="1234"&gt;&lt;/c:set&gt; &lt;c:choose&gt; &lt;c:when test="${str1 == '...

    JSTL实例讲解大全

    2. `&lt;c:if&gt;` 和 `&lt;c:choose&gt;`:条件判断,相当于Java的if-else语句。 3. `&lt;c:set&gt;`:设置变量,可以在页面范围内存储值。 4. `&lt;c:remove&gt;`:移除变量,释放内存。 5. `&lt;c:url&gt;` 和 `&lt;c:param&gt;`:构建URL并添加参数,...

    jstl-impl-jstl-api-1.2

    1. **Core**:核心标签库,提供了基本的控制结构,如条件语句(if/else)、循环(foreach)以及重定向和转发等。 2. **Format**:格式化标签库,用于日期、时间、数字的格式化,以及国际化的支持。 3. **Function*...

    JSTLjar包.zip

    2. **c:if**和**c:choose**:用于条件判断,类似于Java中的if...else语句。 3. **c:set**:设置变量。 4. **c:out**:安全地输出值,防止XSS攻击。 5. **c:url**和**c:param**:创建URL并添加参数。 6. **c:import**...

    JSTL 标签大全详解

    - **choose 标签**:提供类似于 Java 中的 if/elseif/else 结构。 ```jsp &lt;c:set var="score" value="${param.score}" /&gt; &lt;c:choose&gt; &lt;c:when test="${score &gt; 100 || score 错误的分数:${score} &lt;/c:when&gt; ...

    jstl标签详解.doc

    2. **&lt;c:choose&gt;**、**&lt;c:when&gt;**和**&lt;c:otherwise&gt;**:实现类似于Java中的if...else结构,根据条件执行不同的代码块。 3. **&lt;c:forEach&gt;**:遍历集合或数组,对每个元素执行代码块。 4. **&lt;c:forTokens&gt;**:根据...

    JSTL标签库jar包文件

    1. **c:choose, c:when, c:otherwise**:提供类似Java中的if-else语句,用于条件判断。 2. **c:forEach**:用于遍历集合,如数组、列表、Map等。 3. **c:if**:根据指定条件执行标签内的内容。 4. **c:set**:设置...

    JSTL1.2.5 taglibs-standard-jstlel-1.2.5.jar

    1. **Core(核心标签库)**:提供了许多与页面控制流程相关的标签,如条件语句(if、else)、迭代(forEach)、重定向(redirect)、URL操作(url)等。这些标签可以替代部分JSP动作标签,使代码更简洁、易读。 2. ...

    JSTL 1.2+standard 1.1.2

    - `&lt;c:redirect&gt;`, `&lt;c:import&gt;`:处理页面跳转和资源导入。 2. **函数标签库(Functions Tags)**:提供了额外的字符串处理和集合操作函数。 3. **XML标签库(XML Tags)**:用于处理XML文档,如解析、转换和操作...

    JSTL API

    例如,使用`&lt;c:choose&gt;`、`&lt;c:when&gt;`和`&lt;c:otherwise&gt;`可以构建复杂的条件语句,而无需在JSP页面中嵌入`if...else if...else`结构。 JSTL的配置通常在web.xml文件中完成,通过`taglib`指令引入JSTL库,并指定相应的...

    JSTL语法及参数详解

    这些标签用于根据不同的条件执行不同的代码块,类似于编程语言中的if-else语句。 示例: ```html &lt;c:if test="${user.isAdmin}"&gt; Admin panel &lt;/c:if&gt; &lt;c:choose&gt; &lt;c:when test="${user.isAdmin}"&gt; Admin panel...

    JSTL标签 详细易懂

    - `&lt;sql:transaction&gt;`:处理SQL事务。 **JSTL Functions库详解:** - `fn:length()`:计算数组或集合的长度。 - `fn:substring()`:截取字符串的一部分。 - `fn:indexOf()`:查找字符串中的子串位置。 - `fn:...

    jstl.rar_JSTL

    1. **Core标签库(c)**:提供了基本的控制结构,如条件语句(if/else)、循环(foreach)、包含(include)等,类似于编程语言中的控制流。 2. **Format/Internationalization标签库(fmt)**:用于日期、时间、...

    jstl标签基础+例子

    - `&lt;c:choose&gt;/&lt;c:when&gt;/&lt;c:otherwise&gt;`:实现类似于 Java 中的 if-else-if 结构。 - 示例: ```jsp &lt;c:choose&gt; &lt;c:when test="${row.v_money 学生&lt;/c:when&gt; &lt;c:when test="${row.v_money &gt;= 10000 && row.v_...

    JSTL表达式

    - **choose**:这是一个条件判断标签,类似于Java中的`if`/`else if`/`else`结构。它包含多个`when`子标签和一个可选的`otherwise`子标签。当`when`标签的`test`属性为真时,执行其内容;如果所有的`when`标签都不...

    JSTL详细标签库介绍

    异常处理在java中原理:&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;异常处理有Method调用者的调用者或者Method调用者来处理,&lt;BR&gt;9、 异常处理适用分别开发的组件系统&lt;BR&gt;10、 因为一些程序员使用不支持异常处理...

Global site tag (gtag.js) - Google Analytics