xslt a přesun kontextu poduzlu pro pojmenovanou šablonu rubrika: Programování: Jiné
2
Andreaw Fean
položil/-a 4.1.2020
Ahoj.
Mám pro ilustraci tato data:
<items> <node> <name>Pavel</name> <surname>Dee</surname> </node> <node> <name>Petr</name> <surname>Xee</surname> </node> <node> <city>Prague</city> <zip>10000</zip> </node> </items>
A něčím takovým to zpracovávám:
<xsl:for-each select="node[$offsetRow]"> <xsl:call-template name="person"> <xsl:with-param name="counter" select="$counter" /> </xsl:call-template> </xsl:for-each> <xsl:for-each select="node[$offsetRow]"> <xsl:call-template name="address"> <xsl:with-param name="counter" select="$counter" /> </xsl:call-template> </xsl:for-each> <xsl:template name="person"> <xsl:param name="counter"/> item: <xsl:value-of select="$counter"/> name: <xsl:value-of select="name"/> surname: <xsl:value-of select="surname"/> </xsl:template> <xsl:template name="address"> <xsl:param name="counter"/> item: <xsl:value-of select="$counter"/> city: <xsl:value-of select="city"/> zip: <xsl:value-of select="zip"/> </xsl:template>
A chtěl bych se zbavit toho for-each, který zneužívám na to, abych té šabloně předal poduzel. Přijde mi to ošklivé, a určitě musí existovat lepší způsob. Něco jako:
<xsl:call-template name="person" select="node[$offsetRow]"> <xsl:with-param name="counter" select="$counter" /> </xsl:call-template>
Poradíte?
Pro plný přístup na Devel.cz se prosím přihlaste:
Nebo se přihlaste jménem a heslem:
Komentáře