java - if…else在jsp或者jstl

我有一个开放式的问题。

我想为每种情况分别设置单独的HTML代码段...


if (Condition 1)
Some HTML code for con1
else if (Condition 2)
Some HTML code for con2

想测试(在JS中)的条件是;


var isiPad = navigator.userAgent.match(/iPad/i) != null;
if (isiPad)
{}
else
{}

现在必须在.jsp页中实现。

我该怎么做?使用JSTL最好的方法是什么?

我想只应加载/呈现相应的代码,例如,如果条件1为true ,则条件2中的HTML代码不执行(除了隐藏在浏览器中)。

时间:

我应该使用JSTL?

是的

可以使用<c:if><c:choose>标记在jsp中使用JSTL进行条件呈现,

要模拟if,可以使用,


<c:if test="condition"></c:if>

要模拟if...else,可以使用,


<c:choose>
 <c:when test="${param.enter=='1'}">pizza.
 <br />
 </c:when>

 <c:otherwise>pizzas.
 <br />
 </c:otherwise>
</c:choose>

如果只想输出不同的文本,则更简洁的示例如下,


${condition ?"some text when true" :"some text when false"}


<c:choose>
 <c:when test="${..}">...</c:when> <!-- if condition -->
 <c:when test="${..}">...</c:when> <!-- else if condition -->
 <c:otherwise>...</c:otherwise> <!-- else condition -->
</c:choose>

如果要比较字符串,请编写以下JSTL:


<c:choose>
 <c:when test="${myvar.equals('foo')}">
 ...
 </c:when>
 <c:when test="${myvar.equals('bar')}">
 ...
 </c:when>
 <c:otherwise>
 ...
 </c:otherwise>
</c:choose>


<%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %>
<c:set var="val" value="5"/>
<c:choose> 
 <c:when test="${val == '5'}">
 Value is 5
 </c:when>
 <c:otherwise>
 Value is not 5
 </c:otherwise>
</c:choose>


 <%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %>
 <c:set var="isiPad" value="value"/>
 <c:choose>
 <!-- if condition -->
 <c:when test="${...}">Html Code</c:when> 
 <!-- else condition -->
 <c:otherwise>Html code</c:otherwise> 
 </c:choose>

...