|
||||||||||||||||||||||||||||||||||||||||||||||||
Menu
Distributions (131)
Software (10844)
|
Programujeme s XML (10.) - Cyklíme v XSLTMinule jsme si ukázali, jak můžeme pomocí šablon nahrazovat elementy různým jiným obsahem, to nám ovšem často nestačí, proto se dnes podíváme, jak můžeme procházet sadu uzlů v cyklu.
Také jsme náš telefoní seznam s úspěchem převedli na XHTML, co kdybychom ovšem chtěli změnit pořadí sloupců nebo nedejbože seznam seřadit? XSLT je jazyk velice mocný, a tak ani tento úkol nebude složitý.
Nejprve si zkusíme seznam upravit tak, aby prvním sloupcem bylo příjmení.
Použijeme k tomu element <xsl:for-each select="person"> <tr> <td> <xsl:value-of select="surname" /> </td> <td> <xsl:value-of select="first-name" /> </td> <td> <xsl:value-of select="phone" /> </td> <td> <xsl:value-of select="email" /> </td> </tr> </xsl:for-each>
Všímavý čtenář si jistě všimne nového elementu
Často můžeme použít pro stejný úkol jak několik samostatných šablon
a element <xsl:template match="e"> <em> <xsl:apply-templates /> </em> </xsl:template> <xsl:template match="s"> <strong> <xsl:apply-templates /> </strong> </xsl:template>
Zde ovšem možnosti elementu
Pokud tedy chceme seřadit náš seznam podle příjmení přidáme na začátek
elementu . . . <xsl:for-each select="person"> <xsl:sort select="surname"/> <tr> . . .
Samozřejmě je možné řadit podle více kritérií, uděláme to tak, že
uvedeme více elementů . . . <xsl:for-each select="person"> <xsl:sort select="surname"/> <xsl:sort select="first-name"/> <tr> . . .
Nakonec bych ještě doplnil že element . . . <xsl:apply-templates> <xsl:sort select="surname"/> <xsl:sort select="first-name"/> </xsl:apply-templates> . . . Zde bych pro dnešek skončil a příště se poněkud podrobněji podíváme na jazyk XPath, který je velice silný, přestože ho dosud používáme pouze pro hledání elementů podle názvu.
|
Search Software
Search Google
|
||||||||||||||||||||||||||||||||||||||||||||||
©Pavel Kysilka - 2003-2024 | maillinuxsoft.cz | Design: www.megadesign.cz |