Hàm current() trong XSLT
Định nghĩa và cách sử dụng
Hàm current() trả về một tập hợp các nút chỉ chứa nút hiện tại. Thường thì nút hiện tại và nút ngữ cảnh là giống nhau.
<xsl:value-of select="current()"/>
Bằng
<xsl:value-of select="."/>
Tuy nhiên, có một điểm khác biệt. Hãy xem biểu thức XPath dưới đây: "catalog/cd". Biểu thức này đã chọn các nút con <catalog> của nút hiện tại, sau đó chọn các nút con <cd> của nút <catalog>. Điều này có nghĩa là, trong mỗi bước tính toán, "." có ý nghĩa khác nhau.
Dưới đây là dòng này:
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
Sẽ xử lý tất cả các yếu tố cd có giá trị thuộc tính title bằng giá trị thuộc tính ref của nút hiện tại.
Đ不同的是:
<xsl:apply-templates select="//cd[@title=./@ref]"/>
Đこの sẽ xử lý tất cả các yếu tố cd có giá trị thuộc tính title và ref bằng nhau.
Cú pháp
node-set current()
Ví dụ
<?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> <xsl:for-each select="catalog/cd/artist"> Node hiện tại: <xsl:value-of select="current()"/> <br /> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>