Bonjour à tous,
pour le moment, j'ai la structure XML suivante:
Code :
- <?xml version="1.0" encoding="iso-8859-1"?>
- <Racine>
- <Item titre="Exécuter" lien="TMainForm.htm" id="0" />
- <Chapitre titre="Analyses" lien="" id="1">
- <Retrait>
- <Chapitre titre="Enregistrer les statistiques et les stratégies" lien="" id="2">
- <Retrait>
- <Chapitre titre="Créer un nouveau séquençage" lien="" id="3">
- <Retrait>
- <Item titre="Premières informations" lien="" id="4" />
- <Item titre="Equipe à domicile" lien="" id="5" />
- <Item titre="Equipe à l'extérieur" lien="" id="6" />
- <Item titre="Options d'enregistrement" lien="" id="7" />
- </Retrait>
- </Chapitre>
- </Retrait>
- </Chapitre>
- </Retrait>
- </Chapitre>
- </Racine>
|
Avec le XSL suivant (uniquement le template pour Item)
Code :
- <xsl:template match="Item">
- <div>
- <img src="../../Images/dot.gif" alt="" />
- <a href="#" onclick="showhide(document.getElementById('d{@id}'),'swap'); ajax_loadContent('d{@id}','{@lien}'); return false">
- <xsl:value-of select="@titre" />
- </a>
- <div id="d{@id}" class="box" style="display:none;"></div>
- </div>
- </xsl:template>
|
Comme vous pouvez le voir, j'utilise l'attribut id des noeuds pour générer un cadre invisible avec une id unique, que je mets à jour avec AJAX.
Bref, ce que je me demandais, c'est s'il est possible que je me passe des attributs id dans le XML, et donc utiliser une fonction XSL qui me retourne l'index du noeud actuel, par rapport à la racine du XML.
J'ai essayé de le récupérer grâce à <xsl:value-of select="position()" />, mais ça n'indique que l'index par rapport au noeud père (et par incréments de 2 )
Merci d'avance
Mike