JSTL XML < x:choose >, < x:when >, < x:otherwise > 标签
<x:choose> 标签的工作方式类似于 Java 的 switch 语句,允许你在许多选项中进行选择。switch 语句有 case 语句,<x:choose> 标签有 <x:when> 标签。switch 语句有缺省子句来指定默认操作,同样的,<x:choose> 标签也有 <x:otherwise> 标签作为缺省子句。
属性:
-
<x:choose>标签没有任何属性。 -
<x:when>标签有一个属性,如下所示。 <x:otherwise>标签没有任何属性。
<x:when> 标签具有如下所示属性:
| 属性 | 描述 | 是否必需 | 默认值 |
|---|---|---|---|
| select | 要计算的条件 | 是 | 无 |
实例:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<html>
<head>
<title>JSTL x:choose Tags</title>
</head>
<body>
<h3>Books Info:</h3>
<c:set var="xmltext">
<books>
<book>
<name>Padam History</name>
<author>ZARA</author>
<price>100</price>
</book>
<book>
<name>Great Mistry</name>
<author>NUHA</author>
<price>2000</price>
</book>
</books>
</c:set>
<x:parse xml="${xmltext}" var="output"/>
<x:choose>
<x:when select="$output//book/author = 'ZARA'">
Book is written by ZARA
</x:when>
<x:when select="$output//book/author = 'NUHA'">
Book is written by NUHA
</x:when>
<x:otherwise>
Unknown author.
</x:otherwise>
</x:choose>
</body>
</html>
这将产生如下所示结果:
Books Info:
Book is written by ZARA