XSLT -xsl-apply-templates- 元素_1

宇宙热恋期

XSLT <xsl:apply-templates> 元素



定义和用法

<xsl:apply-templates> 元素可向当前元素或当前元素的子节点应用模板。

如果我们向 <xsl:apply-templates> 元素添加 select 属性,那么它仅会处理匹配该属性的值的子元素。我们可使用 select 属性来规定要处理的子节点的顺序。


语法


<xsl:apply-templates select="expression" mode="name">

<!-- Content:(xsl:sort|xsl:with-param)* -->

</xsl:apply-templates>

属性

属性 描述
select expression 可选。规定要处理的节点。星号选取整个节点集。如果省略该属性,则将选取当前节点的所有子节点。
mode name 可选。如果存在为相同元素定义的多个处理方法,那么用 mode 可以区分它们。

实例 1

用 h1 元素包围文档中每个 title 元素:


<?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="title">
<h1><xsl:apply-templates/></h1>
</xsl:template>

</xsl:stylesheet>

实例 2

用 h1 元素包围文档中所有属于 message 的子元素的 title 元素:


<?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="message">
<h1><xsl:apply-templates select="title"/></h1>
</xsl:template>

</xsl:stylesheet>

实例 3

用 h1 元素包围文档中 mode 属性设置为 "big" 的 message 所有子节点:


<?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="message">
<h1><xsl:apply-templates select="*" mode="big"/></h1>
</xsl:template>

</xsl:stylesheet>


版权声明:本页面内容旨在传播知识,为用户自行发布,若有侵权等问题请及时与本网联系,我们将第一时间处理。E-mail:284563525@qq.com

目录[+]

取消
微信二维码
微信二维码
支付宝二维码