Javascript 您能使用<;c:否则>;与<;c:如果>;或仅使用<;c:什么时候;?

Javascript 您能使用<;c:否则>;与<;c:如果>;或仅使用<;c:什么时候;?,javascript,jsp,jsf,jstl,jsp-tags,Javascript,Jsp,Jsf,Jstl,Jsp Tags,我在StackOverflow中搜索了和,找到了一些信息,但并不完全是我要找的的设计如下: <c:choose> <c:when test="${somecondition}"> <%-- do stuff --%> </c:when> <c:when test="${someothercondition}"> <%-- do other stuff --%>

我在StackOverflow中搜索了
,找到了一些信息,但并不完全是我要找的<代码>的设计如下:

<c:choose>
    <c:when test="${somecondition}">
        <%-- do stuff --%>
    </c:when>
    <c:when test="${someothercondition}">
        <%-- do other stuff --%>
    </c:when>
    <c:otherwise>
        <%-- do other other stuff --%>
    </c:otherwise>
</c:choose>

(基本上类似于switch语句)

然而,我发现的其他问题没有一个能够明确告诉我这是否是使用
的唯一方法(尽管它们似乎暗示了这一点)。你能吃点什么吗

<c:if test="${somecondition}">
        <%-- do stuff --%>
</c:if>
<c:otherwise>
    <%-- do other stuff --%>
</c:otherwise>

(像if/else)或者这是错的


(请检查我的标签。我必须同时使用/学习JSP、Javascript和JQuery,因此有时会混淆哪种新事物是哪种新语言。)

没有
你就不能使用它。JSTL不同于简单条件标记和条件块执行:

if标记允许根据test属性的值有条件地执行其主体

choose标记通过嵌入的when子标记执行条件块执行。它呈现测试条件评估为true的第一个when标记的主体。如果nested when标记的所有测试条件的计算结果均为true,则将计算otherwise标记的主体(如果存在)

因此,为了使用
,您肯定需要一个条件块(

另请参见:


    • 没有
      你就不能使用它。JSTL不同于简单条件标记和条件块执行:

      if标记允许根据test属性的值有条件地执行其主体

      choose标记通过嵌入的when子标记执行条件块执行。它呈现测试条件评估为true的第一个when标记的主体。如果nested when标记的所有测试条件的计算结果均为true,则将计算otherwise标记的主体(如果存在)

      因此,为了使用
      ,您肯定需要一个条件块(

      另请参见:


        • 没有
          你就不能使用它。JSTL不同于简单条件标记和条件块执行:

          if标记允许根据test属性的值有条件地执行其主体

          choose标记通过嵌入的when子标记执行条件块执行。它呈现测试条件评估为true的第一个when标记的主体。如果nested when标记的所有测试条件的计算结果均为true,则将计算otherwise标记的主体(如果存在)

          因此,为了使用
          ,您肯定需要一个条件块(

          另请参见:


            • 没有
              你就不能使用它。JSTL不同于简单条件标记和条件块执行:

              if标记允许根据test属性的值有条件地执行其主体

              choose标记通过嵌入的when子标记执行条件块执行。它呈现测试条件评估为true的第一个when标记的主体。如果nested when标记的所有测试条件的计算结果均为true,则将计算otherwise标记的主体(如果存在)

              因此,为了使用
              ,您肯定需要一个条件块(

              另请参见:


              @XtremeBiker这是我考虑的问题之一。答案是使用choose/when/others作为if/else类型的语句,但没有说明这是一种方法还是唯一的方法。它没有回答我在标题中提出的问题。看看我的答案,我认为它很合适;-)@这是我考虑的问题之一。答案是使用choose/when/others作为if/else类型的语句,但没有说明这是一种方法还是唯一的方法。它没有回答我在标题中提出的问题。看看我的答案,我认为它很合适;-)@这是我考虑的问题之一。答案是使用choose/when/others作为if/else类型的语句,但没有说明这是一种方法还是唯一的方法。它没有回答我在标题中提出的问题。看看我的答案,我认为它很合适;-)@这是我考虑的问题之一。答案是使用choose/when/others作为if/else类型的语句,但没有说明这是一种方法还是唯一的方法。它没有回答我在标题中提出的问题。看看我的答案,我认为它很合适;-)您提供的链接似乎表明条件标记是流控制标记的子类型。我看错了吗?它还将
              if
              choose
              定义为流标记和条件标记。它的关键区别似乎是条件标记(if和choose)和迭代器标记之间的区别,所以我不确定为什么要链接它来显示if和choose之间的区别。也许我遗漏了什么?对不起,我误读了,
              if
              标记执行一个唯一的测试,它基于该测试执行其主体。相反,
              choose
              执行条件块执行。区别在于前者只允许一个条件,而后者是一个完整的条件块。因此,
              否则
              仅进入块;-)要更新答案您提供的链接似乎表明条件标记是流控制标记的一个子类型。我看错了吗?它还将
              if
              choose
              定义为流标记和条件标记。关键的区别似乎是mak