java类库详细讲解
源代码在线查看: if.html
Conditionally Generating Output Using JSTL in a JSP Page
(Java Developers Almanac Example)
BODY CODE {font-family: Courier, Monospace; font-size: 11pt} TABLE, BODY {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt} PRE {font-family: Courier, Monospace; font-size: 10pt} H3 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11pt} A.eglink {text-decoration: none} A:hover.eglink {text-decoration: underline} -->
The Java Developers Almanac 1.4
Order this book from Amazon.
Home
>
List of Packages
>
javax.servlet.jsp.jstl.core
[6 examples]
e1068.
Conditionally Generating Output Using JSTL in a JSP Page
Any non-JSP code in a JSP file is called template text and is
automatically written to the output stream. The JSTL tags <c:if>
and <c:choose> make it possible to dynamically generate template
text depending on a condition.
The <c:if> tag generates its body if the expression in the
test attribute evaluates to the boolean value true
or the string value "true":
<%-- Declare the core library --%>
<%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c" %>
<%-- Simple if conditions --%>
<c:if test='${param.p == "someValue"}'>
Generate this template text if p equals someValue
</c:if>
<c:if test='${param.p}'>
Generate this template text if p equals "true"
</c:if>
An if/else action requires the use of the <c:choose> tag:
<%-- A simple if/else condition --%>
<c:choose>
<c:when test='${param.p == "someValue"}'>
Generate this template text if p equals someValue
</c:when>
<c:otherwise>
Otherwise generate this template text
</c:otherwise>
</c:choose>
Multiple conditions can be evaluated using the <c:choose> tag:
<c:choose>
<c:when test='${param.p == "0"}'>
Generate this template text if p equals 0
</c:when>
<c:when test='${param.p == "1"}'>
Generate this template text if p equals 1
</c:when>
<c:otherwise>
Generate this template text if p equals anything else
</c:otherwise>
</c:choose>
The <c:out> can also be used to conditionally generate template text.
If the value attribute is null, a default value (if specified)
is generated. The default value can be specified using the default
attribute or can be specified in the body content. This
example demonstrates both methods:
<%-- Default value in an attribute --%>
<c:out value='${param.p}' default="Generate this if p is null" />
<%-- Default value in the body content --%>
<c:out value='${param.p}'>
Generate this if p is null
</c:out>
Related Examples
e1063.
Using the Java Standard Tag Library (JSTL) in a JSP Page
e1064.
Enabling the JSTL Expression Language in a JSP Page
e1065.
Getting a Request Parameter Using JSTL in a JSP Page
e1066.
Saving Data Using JSTL in a JSP Page
e1067.
Saving and Emitting HTML Fragments Using JSTL in a JSP Page
© 2002 Addison-Wesley.