- 浏览: 1883178 次
- 性别:
- 来自: 合肥
文章分类
- 全部博客 (514)
- OPEN (41)
- WARN (33)
- EXPER (16)
- RESOURCE (7)
- TOOL (4)
- DWR (10)
- Struts1.x (10)
- Ibtais (18)
- MyEclipse (30)
- Sql Server (64)
- Tomcat (7)
- APACHE (4)
- JSP (18)
- SERVLET (6)
- ENGLISH (0)
- ECSide (8)
- JasperReports (7)
- JAVA (24)
- JS (42)
- XML (26)
- CVS (8)
- Mind (1)
- JQUERY (2)
- IBATIS (6)
- PROJECT (0)
- STRUTS2 (0)
- PROXOOL (0)
- SPRING (4)
- Hibernate (0)
- SSI (0)
- JBPM (11)
- FLEX (3)
- JSON (2)
- GWT (1)
- jeecms v3 (1)
- Flash (2)
- DATA (1)
- ORACLE (3)
- 查询oracle 中逗号分隔字符串中所有值 (1)
最新评论
-
小小西芹菜:
GoEasy web三步轻松实现web实时推送1. 引入goe ...
服务器推送技术 java -
kg_1997:
这个方法太棒了,可以不用to_date函数,实在是棒!!!
java/oracle日期处理 -
wodesunday:
:idea:
SQL的分段统计查询语句 -
wodesunday:
引用
SQL的分段统计查询语句 -
BlueSkator:
讲的有点浅,没有深入进去
tomcat需要的重新发布和重启服务器的几种情况
XSLT <xsl:choose> 元素
Previous Page Next Page XSLT <xsl:choose> 元素用于结合 <xsl:when> 和 <xsl:otherwise> 来表达多重条件测试。
<xsl:choose> 元素
语法
<xsl:choose>
<xsl:when test="expression">
... 输出 ...
</xsl:when>
<xsl:otherwise>
... 输出 ....
</xsl:otherwise>
</xsl:choose>在何处放置选择条件
要插入针对 XML 文件的多重条件测试,请向 XSL 文件添加 <xsl:choose>、<xsl:when> 以及 <xsl:otherwise>:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price > 10">
<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>上面的代码会在 CD 的价格高于 10 时向 "Artist" 列添加粉色的背景颜色。
上面的转换结果类似这样:
查看此 XML 文件,查看此 XSL 文件,查看结果。
另一个例子
这是另外一个包含两个 <xsl:when> 元素的例子:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price > 10">
<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:when test="price > 9">
<td bgcolor="#cccccc">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>上面的代码会在 CD 的价格高于 10 时向 "Artist" 列添加粉色的背景颜色,并在 CD 的价格高于 9 且低于等于 10 时向 "Artist" 列添加灰色的背景颜色。
上面的转换结果类似这样:
查看此XML文件,查看此XSL文件,查看结果。
Previous Page Next Page XSLT <xsl:choose> 元素用于结合 <xsl:when> 和 <xsl:otherwise> 来表达多重条件测试。
<xsl:choose> 元素
语法
<xsl:choose>
<xsl:when test="expression">
... 输出 ...
</xsl:when>
<xsl:otherwise>
... 输出 ....
</xsl:otherwise>
</xsl:choose>在何处放置选择条件
要插入针对 XML 文件的多重条件测试,请向 XSL 文件添加 <xsl:choose>、<xsl:when> 以及 <xsl:otherwise>:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price > 10">
<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>上面的代码会在 CD 的价格高于 10 时向 "Artist" 列添加粉色的背景颜色。
上面的转换结果类似这样:
查看此 XML 文件,查看此 XSL 文件,查看结果。
另一个例子
这是另外一个包含两个 <xsl:when> 元素的例子:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price > 10">
<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:when test="price > 9">
<td bgcolor="#cccccc">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>上面的代码会在 CD 的价格高于 10 时向 "Artist" 列添加粉色的背景颜色,并在 CD 的价格高于 9 且低于等于 10 时向 "Artist" 列添加灰色的背景颜色。
上面的转换结果类似这样:
查看此XML文件,查看此XSL文件,查看结果。
发表评论
-
XSTL接触
2011-04-27 15:39 2832XSTL接触 07月 11th, 2006 by 城市刀客 ... -
unknown protocol: c 解决方法,致命错误:“无法编译样式表”
2010-11-26 10:03 4701在使用XSLTransformer解析xml样式表,出现 u ... -
模板存储和解析。
2010-11-16 16:41 1208表单建模或者权限页面显示原理基本使用模板存储和解析 采用XML ... -
xml To html
2010-10-11 15:34 1203import java.io.*; import java.u ... -
(四)XPath 实例
2010-10-11 14:10 1368XPath 实例 Previous Page Next Pag ... -
(三)XPath Axes(坐标轴)
2010-10-11 13:53 1141XML 实例文档 我们将在 ... -
(二)XPath 语法
2010-10-11 13:41 922XPath 使用路径表达式来选取 XML 文档中的节点或节点集 ... -
XPath 术语(一)
2010-10-11 13:40 966XPath 术语 节点(Node) ... -
XSLT中用normalize-space函数来清除元素的前后空格
2010-10-11 13:30 1903XSLT中用normalize-space函数来清除元素的前后 ... -
java编写xsl转换器(xslt)把xml文件转换为html文件2
2010-10-11 10:41 1622//Prints formatted representati ... -
xsl:attribute
2010-10-11 09:26 2768xsl:attribute 创建一个属性节点和追加节点到输出节 ... -
XSLT - 客户端
2010-10-11 09:14 879如果您的浏览器支持 XSLT,那么在浏览器中它可被用来将文档转 ... -
XSLT <xsl:apply-templates> 元素
2010-10-11 09:10 1282<xsl:apply-templates> 元素可 ... -
XSLT <xsl:if> 元素
2010-10-11 09:04 1244XSLT <xsl:if> 元素 Prev ... -
XSLT <xsl:sort> 元素
2010-10-11 09:02 1761XSLT <xsl:sort> 元素 Previo ... -
XSLT <xsl:for-each> 元素
2010-10-11 09:02 1576XSLT <xsl:for-each> 元素 Pr ... -
XSLT <xsl:value-of> 元素
2010-10-11 09:01 1164XSLT <xsl:value-of> 元素 Pr ... -
XSLT 元素 (一)
2010-10-08 15:09 992XSLT 元素 XSL 样式表由 ... -
java编写xsl转换器(xslt)把xml文件转换为html文件
2010-10-08 14:32 4504package xslt; import java.io ... -
jdom常用方法封装
2010-02-06 10:22 1541import java.io.*; import javax ...
相关推荐
1. **XSLT语法**:学习基本的XSLT元素,如`<xsl:template>`、`<xsl:for-each>`、`<xsl:if>`和`<xsl:choose>`,以及如何使用XPath表达式选择和操作XML节点。 2. **模板匹配**:掌握如何通过模式匹配来指定何时应用...
XSLT还包含了更多其他元素和功能,例如 `<xsl:decimal-format>`、`<xsl:element>`、`<xsl:key>` 等等。每个元素都有其独特的用途,了解它们可以帮助开发人员更高效地进行XML数据的转换和处理。接下来将继续介绍更多...
当在一个XSLT样式表中使用 `<xsl:import>` 元素导入另一个样式表时,该元素可以被用来调用导入样式表中的模板。 - **语法**:`<xsl:apply-imports/>` - **属性**:无 - **示例**: ```xml <?xml version="1.0" ...
4. **条件语句(Conditional Statements)**:如`<xsl:if>`和`<xsl:choose>`,根据条件决定是否处理某个节点。 5. **迭代循环(Loops)**:`<xsl:for-each>`用于遍历节点集合,对每个节点执行指定的操作。 6. **变量...
在这个XSLT样式表中,定义了两个主要的模板:一个是匹配`<data_info>`元素的模板,另一个是执行字符串分割的自定义模板`splitStr`。 - 在`<data_info>`模板中,通过调用`splitStr`模板并传递`@CC_ID`属性的值和控制...
1. `<xsl:stylesheet>`:这是XSLT文档的根元素,包含了所有转换规则。 2. `<xsl:template>`:定义处理XML元素的方式,`match`属性用于指定匹配的XML元素。 3. `<xsl:value-of>`:用于提取并输出XML元素的文本内容。 ...
`<xsl:choose>`是容器元素,`<xsl:when>`表示一个条件分支,`<xsl:otherwise>`用于捕获所有未匹配的条件。例如,在案例2(element-choose.xslt)中,不同类别的图书会显示不同的背景色。其基本结构如下: ```xml ...
5. **条件语句和循环(Conditional Statements & Loops)**:XSLT支持条件语句(如`<xsl:if>`和`<xsl:choose>`)以及循环(如`<xsl:for-each>`),使我们能够基于数据的条件来控制输出。 6. **输出指令(Output ...
- `<xsl:stylesheet>`:定义XSLT文档的根元素。 - `<xsl:template>`:定义如何处理特定的XML节点。 - `<xsl:value-of>`:用于输出节点的值。 - `<xsl:for-each>`:用于遍历一组节点。 - `<xsl:sort>`:用于对节点...
- **筛选和排序**:XSLT可以通过条件判断(如`<xsl:if>`和`<xsl:choose>`)来选择性地输出元素,或者使用`<xsl:sort>`对元素进行排序。 - **重复和循环**:使用`<xsl:for-each>`可以遍历XML文档中的节点集合,实现...
4. **选择和条件语句**:`<xsl:if>`和`<xsl:choose>`、`<xsl:when>`、`<xsl:otherwise>`用于基于条件进行不同的处理。 5. **函数库**:XSLT提供了一系列内置函数,如字符串处理、数值计算、节点操作等。此外,还...
在实际应用中,你可能还会遇到条件判断(`<xsl:if>`和`<xsl:choose>`)、循环(`<xsl:for-each>`)、变量(`<xsl:variable>`和`<xsl:param>`)以及导入和包含其他样式表(`<xsl:import>`和`<xsl:include>`)等功能。...
XSLT元素是XSLT语言的基本组成部分,包括<xsl:template>、<xsl:value-of>、<xsl:for-each>、<xsl:sort>、<xsl:if>、<xsl:choose>等。XSLT函数是XSLT语言中的一种内置函数,总共有超过100个,包括字符串、数值、日期...
7. `<xsl:choose>` 和 `<xsl:when>`、`<xsl:otherwise>` 元素:提供多分支选择。`<xsl:choose>`包含一系列`<xsl:when>`,每个`<xsl:when>`有自己的`test`属性,当测试条件满足时执行相应内容。若所有`<xsl:when>`都...
6. **条件语句**: `<xsl:if>`、`<xsl:choose>`和`<xsl:when>`用于基于条件执行不同的处理逻辑。 7. **循环**: `<xsl:for-each>`用于遍历XML集合中的每一个节点,执行指定的操作。 8. **模板继承与覆盖**: 模板可以...
11. **条件处理**:XSLT提供了`<xsl:if>`和`<xsl:choose>`元素来进行条件判断,根据不同的情况执行不同的转换。 学习并熟练运用XSLT和XPath,能够有效地管理和转换XML数据,从而在数据处理、网页渲染、数据集成等...
4. **条件语句**:`<xsl:if>`和`<xsl:choose>`、`<xsl:when>`、`<xsl:otherwise>`组合用于条件判断。它们可以根据条件决定是否执行某段代码。 5. **循环**:`<xsl:for-each>`用于遍历XML文档中的节点集。可以用来...
<xsl:choose> <xsl:when test="contains($SrcString, $FromString)"> <!-- 找到子字符串,先输出前面的部分 --> <xsl:value-of select="substring-before($SrcString, $FromString)"/> <!-- 输出替换后的子字符...