如果…在JSP或JSTL内

我有一个开放式的问题..

我想根据条件(桌面/ ipad)有一个HTML代码..说条件1 /条件2

我想要为这些条件中的每一个单独的HTML片段…

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

我想testing的条件(在JS中)是;

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

现在这个必须在.jsp页面中实现…

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

最主要的是,只有相应的代码才能被加载/渲染,例如,如果条件1为真,条件2中的HTML代码根本不应该被执行(除了被隐藏在浏览器中)

我应该使用JSTL吗?

是。

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

要模拟是否可以使用:

 <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:select更短。

这个构造是:

 <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> 

如果条件并不昂贵,我有时候更喜欢简单地使用两个不同的<c:if标签 – 它使读起来更容易。

 <%@ 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> 

如果你想比较string ,写下面的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="isiPad" value="value"/> <c:choose> <!-- if condition --> <c:when test="${...}">Html Code</c:when> <!-- else condition --> <c:otherwise>Html code</c:otherwise> </c:choose> 

如果您想使用JSTL Tag Libek进行以下操作,请按照以下步骤操作:

【要求】若数字大于等于40且小于50,则显示“以4开头的两位数字”,否则显示“其他数字”。

[解决scheme]

 1. Please Add the JSTL tag lib on the top of the page.` <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>` 2. Please Write the following code ` <c:choose> <c:when test="${params.number >=40 && params.number <50}"> <p> Two digit number starting with 4. </p> </c:when> <c:otherwise> <p> Other numbers. </p> </c:otherwise> </c:choose>`