Najnowsze tutoriale tworzenie stron internetowych
 

XSLT <xsl:apply-templates> Element


<Pełna XSLT element odniesienia

Definicja i Wykorzystanie

<xsl:apply-templates> Element stosuje szablon do bieżącego elementu lub do węzłów podrzędnych bieżącego elementu.

Jeśli dodamy do atrybutu select <xsl:apply-templates> elementem będzie przetwarzać tylko element podrzędny, który odpowiada wartości atrybutu. Możemy użyć select atrybut, aby określić, w jakiej kolejności węzły potomne mają być przetwarzane.


Składnia

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

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

</xsl:apply-templates>

Atrybuty

Atrybut Wartość Opis
selectexpression Opcjonalny. Określa węzły do ​​obróbki. Gwiazdka zaznacza cały zestaw węzłów. Jeśli ten atrybut jest pominięty, zostaną wybrane wszystkie węzły podrzędne bieżącego węzła
modename Opcjonalny. Jeśli istnieje wiele sposobów przetwarzania określonej dla tego samego elementu, wśród nich wyróżnia

Przykład 1

Zawijać pojedynczy h1 elementu wokół każdego elementu tytułową w dokumencie:

<?xml version="1.0" encoding="UTF-8"?>
<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>

Przykład 2

Zawijać pojedynczy h1 elementu wokół wszystkich elementów, które są tytułowych dzieci komunikatem:

<?xml version="1.0" encoding="UTF-8"?>
<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>

Przykład 3

Owinąć wokół pojedynczego elementu h1 wszystkich węzłów potomnych wiadomości, które mają mode atrybut ustawiony na "big" :

<?xml version="1.0" encoding="UTF-8"?>
<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>

<Pełna XSLT element odniesienia