XSLT current() 函数
❮ XSLT 函数参考定义和用法
current() 函数返回一个仅包含当前节点的节点集。 通常当前节点和上下文节点是相同的。
<xsl:value-of select="current()"/>
等同于
<xsl:value-of select="."/>
但是,有一个区别。 查看以下 XPath 表达式:"catalog/cd"。 该表达式选择当前节点的 <catalog> 子节点,然后选择 <catalog> 节点的 <cd> 子节点。 这意味着在评估的每一步中,"." 都有不同的含义。
下面一行:
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
将处理所有 cd 元素,其 title 属性的值等于当前节点的 ref 属性的值。
这不同于
<xsl:apply-templates select="//cd[@title=./@ref]"/>
这将处理所有具有相同值的 title 属性和 ref 属性的 cd 元素。
语法
node-set current()
实例 1
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="catalog/cd/artist">
Current node: <xsl:value-of select="current()"/>
<br />
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
❮ XSLT 函数参考