|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 81
|
[XSLT] trasformazione da lista annidata a optgroup/options..
Ciao a tutti, ho la seguente lista in formato xml (che contiene un sottoinsieme di tag appartenenti ad xhtml):
Codice:
<opzioni>
<ul>
<li class="layout" id="layout_1.css">layout_1.css
<ul>
<li>carpa_11.css</li>
<li>carpa_12.css</li>
</ul>
</li>
<li class="layout" id="layout_2.css">layout_2.css
<ul>
<li>carpa_21.css</li>
<li>carpa_22.css</li>
</ul>
</li>
</ul>
</opzioni>
Codice:
<select> <optgroup label="layout1.css"> <option value ="carpa_11.css">carpa_11.css</option> <option value ="carpa_12.css">carpa_11.css</option> </optgroup> <optgroup label="layout2.css"> <option value ="carpa_21.css">carpa_21.css</option> <option value ="carpa_22.css">carpa_22.css</option> </optgroup> </select> (ma il problema è che optgroup non deve avere un nodo di testo al suo interno che ne definisca il nome, bensì un attributo "value" con tale valore. Riesco a settare l'attributo in questione, ma non riesco a rimuovere il nodo di testo..): Codice:
<xsl:template match="opzioni"> <div class="marcatore-poliwiki" id="opzioni" > <xsl:apply-templates select="./ul"/> </div> </xsl:template> <xsl:template match="opzioni/ul"> <div id="opzioni" class="marcatore-poliwiki"> <select> <xsl:apply-templates/> </select> </div> </xsl:template> <xsl:template match="opzioni/ul/li"> <optgroup> <xsl:apply-templates/> </optgroup> </xsl:template> <xsl:template match="opzioni/ul/li/ul"> <xsl:apply-templates/> </xsl:template> <xsl:template match="opzioni/ul/li/ul/li"> <option> <xsl:attribute name="value"> <xsl:value-of select="current()"/> </xsl:attribute> <xsl:apply-templates/> </option> </xsl:template> |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:26.



















