current

current 函式可在 XSLT 指令中用於獲取上下文節點。

語法

current()

返回值

一個僅包含當前節點的節點集。

描述

此函式是 XSLT 對 XPath 的特定新增。它不是核心 XPath 函式庫的一部分。

對於最外層的表示式(即不包含在其他表示式內的表示式),當前節點始終與上下文節點相同(可以透過 .self 語法返回)。以下兩個是語義等效的。

xml
<xsl:value-of select="current()"/>
xml
<xsl:value-of select="."/>

在內部表示式中(例如,在方括號內),當前節點仍然與在最外層表示式中時相同。因此,在以下三個表示式中,current 函式(而不是整個表示式)都返回相同的節點。此外,後兩個表示式在語義上是等效的。

xml
<xsl:value-of select="current()"/>
xml
<xsl:value-of select="foo/bar[current() = X]"/>
xml
<xsl:variable name="current" select="current()"/>
<xsl:value-of select="foo/bar[$current = X]"/>

下一個程式碼也與後兩個在語義上是等效的,因為 . 出現在一個最外層表示式中。

xml
<xsl:variable name="current" select="."/>
<xsl:value-of select="foo/bar[$current = X]"/>

但是 . 始終與最窄的上下文相關。因此,在

xml
<xsl:value-of select="foo/bar[. = X]"/>

. 返回 bar 節點,這可能與當前節點不同。

規範

XSLT 1.0 12.4

Gecko 支援情況

支援。