Petits problèmes avec javascript
Résolu
dnt91
Messages postés
48
Date d'inscription
Statut
Membre
Dernière intervention
-
dnt91 Messages postés 48 Date d'inscription Statut Membre Dernière intervention -
dnt91 Messages postés 48 Date d'inscription Statut Membre Dernière intervention -
Salut à tous, je dois avoir que je ne suis pas un spécialiste de javascript, ni des langages web en général, mais pourtant j'en ai bel et bien besoin.
J'ai un fichier xml contenant des serveurs et des sites de façon structurée, je le passe à la moulinette xslt et j'obtiens une vue sous forme d'arbre ds une page html, jusque là pas de souci.
Maintenant, je voudrais rajouter des boutons radio à côté de chaque sous site pour récupérer les attributs du site, à choisir parmi 3 (donc des radio button list) et là c'est le drame car tous les sites et sous sites ont le même id au niveau des radio button list.
Je ne vois pas comment je pourrais faire en sorte de l'incrémenter à chaque itérations de boucles, étant donné qu'il n'ya pas de variables en xslt mais que des constantes et je ne vois pas non plu comment récupérer le nom du serveur qui par exemple pourrait me servir de id pour les radio button list.
Voici une partie de mon code :
<xsl:for-each select="//server">
<a><xsl:attribute name="href">?servername=<xsl:value-of select="@name" disable-output-escaping="yes" /></xsl:attribute><xsl:value-of select="@name" disable-output-escaping="yes" /></a><br/>
<xsl:for-each select="site">
* <xsl:value-of select="@name" disable-output-escaping="yes" /> -
<input id ="RadioList1_0" type = "radio" name="javascript:Set(i);" value="Lock" checked="checked"/>
<label for="RadioList1_0">Lock</label>
<input id ="RadioList1_1" type = "radio" name="javascript:Set(i);" value="NC"/>
<label for="RadioList1_1">NC</label>
<input id ="RadioList1_2" type = "radio" name="javascript:Set(i);" value="Nothing"/>
<label for="RadioList1_2">Nothing</label>
<br/>
<xsl:for-each select="web">
**<xsl:value-of select="@name" disable-output-escaping="yes" /> - <br/>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
Merci à tous.
J'ai un fichier xml contenant des serveurs et des sites de façon structurée, je le passe à la moulinette xslt et j'obtiens une vue sous forme d'arbre ds une page html, jusque là pas de souci.
Maintenant, je voudrais rajouter des boutons radio à côté de chaque sous site pour récupérer les attributs du site, à choisir parmi 3 (donc des radio button list) et là c'est le drame car tous les sites et sous sites ont le même id au niveau des radio button list.
Je ne vois pas comment je pourrais faire en sorte de l'incrémenter à chaque itérations de boucles, étant donné qu'il n'ya pas de variables en xslt mais que des constantes et je ne vois pas non plu comment récupérer le nom du serveur qui par exemple pourrait me servir de id pour les radio button list.
Voici une partie de mon code :
<xsl:for-each select="//server">
<a><xsl:attribute name="href">?servername=<xsl:value-of select="@name" disable-output-escaping="yes" /></xsl:attribute><xsl:value-of select="@name" disable-output-escaping="yes" /></a><br/>
<xsl:for-each select="site">
* <xsl:value-of select="@name" disable-output-escaping="yes" /> -
<input id ="RadioList1_0" type = "radio" name="javascript:Set(i);" value="Lock" checked="checked"/>
<label for="RadioList1_0">Lock</label>
<input id ="RadioList1_1" type = "radio" name="javascript:Set(i);" value="NC"/>
<label for="RadioList1_1">NC</label>
<input id ="RadioList1_2" type = "radio" name="javascript:Set(i);" value="Nothing"/>
<label for="RadioList1_2">Nothing</label>
<br/>
<xsl:for-each select="web">
**<xsl:value-of select="@name" disable-output-escaping="yes" /> - <br/>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
Merci à tous.
A voir également:
- Comment s'appellent les petits carrés qui apparaissent lorsqu'on zoome sur une image ?
- Comment supprimer les pubs qui apparaissent sans arrêt - Guide
- Comment rechercher une image sur google - Guide
- Légender une image - Guide
- Image iso - Guide
- Comment agrandir une image - Guide
3 réponses
Salut!
Pourquoi ne pas procéder comme tu le fais pour l'attribut 'name' en générant un ID via une fonction javascript?
;-)
HackTrack
Pourquoi ne pas procéder comme tu le fais pour l'attribut 'name' en générant un ID via une fonction javascript?
;-)
HackTrack
En fait je l'ai fait directement en xslt en utilisant la fonction position (que je ne connaissant pas!!)
C'est beaucoup plus simple et ca me permet de ne pas forcément afficher toutes mes données du xml dans le source :
Voici un de mes templates, si ca peut aider quelques un d'entre vous:
<!--Catégorie : template, récupère la liste des serveurs-->
<xsl:template name = "GetServers">
<xsl:variable name="serverId"><xsl:value-of select="position()" /></xsl:variable>
<img src="../images/treeview/server.gif"/><a><xsl:attribute name="href">?servername=<xsl:value-of select="@name" disable-output-escaping="yes" /></xsl:attribute><xsl:value-of select="@name" disable-output-escaping="yes" /></a> - <br/>
<input type = "radio" value="Lock"><xsl:attribute name="name"><xsl:value-of select="$serverId" /></xsl:attribute><xsl:attribute name="id"><xsl:value-of select="$serverId" />_a1</xsl:attribute></input>
<label for="a1">Lock</label>
<input type = "radio" value="NC"><xsl:attribute name="name"><xsl:value-of select="$serverId" /></xsl:attribute><xsl:attribute name="id"><xsl:value-of select="$serverId" />_a2</xsl:attribute></input>
<label for="a2">NC</label>
<input type = "radio" value="Nothing" checked="checked"><xsl:attribute name="name"><xsl:value-of select="$serverId" /></xsl:attribute><xsl:attribute name="id"><xsl:value-of select="$serverId" />_a3</xsl:attribute></input>
<label for="a3">Nothing</label>
<br/>
</xsl:template>
C'est beaucoup plus simple et ca me permet de ne pas forcément afficher toutes mes données du xml dans le source :
Voici un de mes templates, si ca peut aider quelques un d'entre vous:
<!--Catégorie : template, récupère la liste des serveurs-->
<xsl:template name = "GetServers">
<xsl:variable name="serverId"><xsl:value-of select="position()" /></xsl:variable>
<img src="../images/treeview/server.gif"/><a><xsl:attribute name="href">?servername=<xsl:value-of select="@name" disable-output-escaping="yes" /></xsl:attribute><xsl:value-of select="@name" disable-output-escaping="yes" /></a> - <br/>
<input type = "radio" value="Lock"><xsl:attribute name="name"><xsl:value-of select="$serverId" /></xsl:attribute><xsl:attribute name="id"><xsl:value-of select="$serverId" />_a1</xsl:attribute></input>
<label for="a1">Lock</label>
<input type = "radio" value="NC"><xsl:attribute name="name"><xsl:value-of select="$serverId" /></xsl:attribute><xsl:attribute name="id"><xsl:value-of select="$serverId" />_a2</xsl:attribute></input>
<label for="a2">NC</label>
<input type = "radio" value="Nothing" checked="checked"><xsl:attribute name="name"><xsl:value-of select="$serverId" /></xsl:attribute><xsl:attribute name="id"><xsl:value-of select="$serverId" />_a3</xsl:attribute></input>
<label for="a3">Nothing</label>
<br/>
</xsl:template>