XSLT huidige() Functie
❮ XSLT-functiereferentieDefinitie en gebruik
De functie current() retourneert een knooppuntenset die alleen het huidige knooppunt bevat. Meestal zijn het huidige knooppunt en het contextknooppunt hetzelfde.
<xsl:value-of select="current()"/>
is gelijk aan
<xsl:value-of select="."/>
Er is echter één verschil. Bekijk de volgende XPath-expressie: "catalog/cd". Deze expressie selecteert de <catalog> onderliggende knooppunten van het huidige knooppunt en selecteert vervolgens de <cd> onderliggende knooppunten van de <catalog> knooppunten. Dit betekent dat bij elke evaluatiestap de "." heeft een andere betekenis.
De volgende regel:
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
zal alle cd-elementen verwerken die een title-attribuut hebben met een waarde die gelijk is aan de waarde van het ref-attribuut van de huidige node.
Dit is anders dan
<xsl:apply-templates select="//cd[@title=./@ref]"/>
die alle cd-elementen verwerkt die een title-attribuut en een ref-attribuut met dezelfde waarde hebben.
Syntaxis
node-set current()
voorbeeld 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>
Bekijk het XML-bestand , Bekijk het XSL-bestand en Bekijk het resultaat .
❮ XSLT-functiereferentie