Bonjour Mesdames, Messieurs,

Sur ma page web, je souhaite pouvoir afficher toutes les images contenues entre les balises icones. Idéalement, je pourrais ajouter/enlever des images entre ces balises dans la page XML, sans avoir à modifier ma page XSL à chaque fois.

Code XML:

<icones>
                <hom1>icones/hom1.gif</hom1>
                <homf1>icones/homf1.gif</homf1>
                <hom2>icones/hom2.gif</hom2>
                <homf2>icones/homf2.gif</homf2>
                <lit>icones/lit.gif</lit>
                <clit>icones/clit.gif</clit>
                <tv>icones/tv.gif</tv>
                <asc>icones/asc.gif</asc>
                <bain>icones/bain.gif</bain>
                <dvd>icones/dvd.gif</dvd>
                <lav>icones/lav.gif</lav>
                <vaiss>icones/vaiss.gif</vaiss>
                <wifi>icones/wifi.gif</wifi>
                <tel>icones/tel.gif</tel>
                <sono>icones/sono.gif</sono>
       </icones> 



Code XSL actuel qui n'affiche qu'une image (J'aimerais qu'il affiche tout ce qui est entre les balises <icones>):
<div id="icones"><img><xsl:attribute name="src"><xsl:value-of select="icones/hom1"/></xsl:attribute></img></div>



Concrètement, il s'agit d'icônes d'options que possèdent des appartements à louer. C'est donc variable en fonction des apparts.

Merci pour votre aide précieuse. À bientôt !
Administrateur
Bonjour et bienvenue paricilas1,

il te faut une boucle for parcourant tous les enfants de icones, je pense (ou une règle s'appliquant à tous les enfants de icones, ce qui ne nécessite alors pas de for)

Juste un conseil: économiser 4 octets en nommant des balises vaiss plutôt que vaisselle ou lavevaisselle rend ton fichier illisible et compréhensible uniquement par toi. Même pour une application interne, c'est dommage je trouve, surtout que ça coûte rien vu la taille du reste. Smiley cligne
Bonjour Felipe,

Merci pour ta réponse. Je pense que ça va bien m'aider. Je débute. Je vais appliquer cette recette et je t'en redonne des nouvelles.

À bientôt donc,
Administrateur
Oups, for-each et pas for. Smiley confused Mais ce n'est pas la manière la plus élégante de résoudre le problème. Définir une règle qui s'applique là où il faut (comme expliqué dans ce cours au chap. 3) est bien plus puissant.
Pour sélectionner les child(ren) ou autre, tu peux regarder du côté de la doc XPath2 (elle fait bien peur mais ce sont surtout les items de liste qui apportent de l'information concrète tout au long du §3.2) en plus de la doc de XSLT2.0 où les exemples en bleu turquoise sont très bien choisis AMHA.
EDIT: j'allais oublier une ressource en français, si tu ne la connais pas: tutoriel XPath (voir exemple 3), tutoriel XSLT
Modifié par Felipe (06 Nov 2006 - 23:49)