IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[XSLT] introduire un lien


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [XSLT] introduire un lien
    Bonjour.
    Je cherche à genérer un tableau ( html ) grâce à des données formatées en xml de base.
    Ma question est comment insérer un appel javascript qui aurait en parametre le nom d'une balise, dans mon cas d'une colonne de mon tableau

    Merci d'avance..

    CODE XSLT:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:ouput method="html" version="4.0" encoding="ISO-8859-1"/>
    <xsl:template match="/">
    	<table class="tableauDonnees">	
    		<tr style="teteTableau">	
    			<xsl:for-each select="//colonne">														
    				<th>					
    					<input type="button" name="bas" value="bas"/>
    					<input type="button" name="haut" value="haut"/>
    					<xsl:value-of select="."/>						
    				</th>
     
     
     
    			</xsl:for-each>
    		</tr>				
    		<xsl:apply-templates select="//Evt">
              <xsl:sort select="model"/>
            </xsl:apply-templates>
     
    	</table>
    </xsl:template>	
     
     
     <xsl:template match="Evt">		
    			<tr>
    				<xsl:for-each select="*">				
    					<td>
    						<xsl:value-of select="."/>
    					</td>
    				</xsl:for-each>
     
    			</tr>	
    </xsl:template>	
     
     
     
     
    </xsl:stylesheet>

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Il manque le xml en entrée pour pouvoir te répondre avec précision, mais a mon avis, ceci répond à ta question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <xsl:for-each select="//colonne">														
    <th>					
    	<input type="button" name="bas" value="bas"/>
    	<input type="button" name="haut" value="haut"/>
     
    	<a href="javascript:ma_fonction('{.}')"><xsl:value-of select="."/></a>
    </th>
     
    </xsl:for-each>

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Re
    bonjour.
    Je n'ai pas mis le xml car je ne pensais pas que cela serait utile.

    En revanche j'ai bien l'impression que tu as bien répondu à ma question.

    <a href="javascript:ma_fonction('{.}')"><xsl:value-of select="."/></a>

    Si je comprend bien, en fait la syntaxe '{.}' est une sorte d'alias vers le value-of qui suit.
    Je m'en vais essayer ca.
    Merci d'avoir répondu rapidement.
    Bonne soirée

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    la synthaxe {} permet juste de spécifier la valeur d'un attribut par un chemin xpath, c'est indépendant de la balise xsl:value-of qui suit, qui pourrait pointer ailleurs ou être remplacer par un text statique.

    Par contre, c'est un équivalent à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a><xsl:attribute name="href"><xsl:value-of select="."/></xsl:attribute>text du lien</a>
    Mais cette dernière syntaxe, bien que plus verbeuse, est plus souple car on peut utilser des xsl:apply-templates xsl:call-template ou encore des for-each pour générer la valeur.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Re.
    Merci l'ami.
    Reponse rapide , exmplication claire.
    Que demander de plus
    Bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT][excel] Affichage Lien Hypertexte contenu dans Attribut
    Par Graineur dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 03/12/2010, 15h26
  2. [Webdesign] Introduire des liens dans une image
    Par totize dans le forum Webdesign & Ergonomie
    Réponses: 0
    Dernier message: 10/04/2008, 20h48
  3. [XSLT] Mettre un lien http dans un xsl.
    Par angearael dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 18/12/2006, 17h02
  4. [XSLT]introduire la valeur d'un noeud dans une balise html
    Par delma dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 19/10/2006, 22h08
  5. [XSLT]Lien 'dynamique'
    Par DelphLaga dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 06/08/2006, 19h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo