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 :

Tableau dans template = bug?


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2004
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 44
    Points : 31
    Points
    31
    Par défaut Tableau dans template = bug?
    Salut à tous,

    J'ai un problème que je n'ai jamais vu auparavant : j'ai un morceau de code archi simple qui me donne un tableau; il marche très bien dans le template principal, et ne marche pas une fois inséré dans un template dédié.

    Mon tableau de dingue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <table>
    		<thead>
    			<tr><th colspan="2">Objects</th></tr>
    		</thead>
    		<tbody>
    			<xsl:for-each select="//object">
    				<tr>
    					<td><xsl:value-of select="@name"/></td>
    					<td><xsl:value-of select="documentation"/></td>
    				</tr>	
    			</xsl:for-each>
    		</tbody>
    	</table>
    Je le mets après mon <body> : parfait.

    Je le mets dans un template :

    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
    <xsl:template name="displayAllObjects">
    	<table>
    		<thead>
    			<tr><th colspan="2">Objects</th></tr>
    		</thead>
    		<tbody>
    			<xsl:for-each select="//object">
    				<tr>
    					<td><xsl:value-of select="@name"/></td>
    					<td><xsl:value-of select="documentation"/></td>
    				</tr>	
    			</xsl:for-each>
    		</tbody>
    	</table>
    </xsl:template>
    et je l'appelle là ou il était dans le body :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:call-template name="displayAllObjects"/>
    Et là c'est le drame:



    Quelqu'un a une idée ?

    Merci d'avance,

    Chato

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 567
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 567
    Points : 21 635
    Points
    21 635
    Par défaut
    A priori c'est incompréhensible, mais je connais un truc qui fait typiquement ça :

    - Tu as mis le xmlns sur ton élément <html> (et pas sur <xsl:stylesheet>)
    - Et comme le montre ton code, tu ne l'as pas mis sur ton élément <table> qui, après avoir été déplacé, n'est plus un enfant de <html> et n'hérite donc pas de son namespace.


    Pour vérifier :
    - montrer le code. Là c'est une erreur structurelle, il faut la structure complète. (Il n'est pas nécessaire, par contre, d'inclure ce qu'il y a à côté de la table, ni tous les détails.)
    - vérifier si oui ou non tu as mis un xmlns sur le <html>. Si oui, essayer de l'enlever
    - vérifier ce que ça donne en le mettant sur <xsl:stylesheet> à la place.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2004
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 44
    Points : 31
    Points
    31
    Par défaut
    Je viens de tomber à l'instant sur mon erreur un peu par hasard, et tu as raison, c'est bien mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    et mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html lang="en-us" xml:lang="en-us" xmlns="http://www.w3.org/1999/xhtml">
    qui faisait tout exploser.

    A ceux qui on le meme probleme, c'est bien le tag suivant qu'il faut utiliser, avec un html "nu".
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
    Damned, ca pardonne pas le xsl

    Merci !!

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

Discussions similaires

  1. Problème ou bug ? Tableau dans une boucle
    Par nico1811 dans le forum Ruby
    Réponses: 12
    Dernier message: 25/01/2010, 09h50
  2. Trouver le premier element d'un tableau dans un template
    Par Zucher dans le forum Contribuez
    Réponses: 2
    Dernier message: 27/01/2008, 18h48
  3. [Mail] Bug d'affichage d'un tableau dans un email
    Par alixe dans le forum Langage
    Réponses: 3
    Dernier message: 22/02/2007, 11h54
  4. [VB6]Passage d'un tableau dans une DLL écrite en delphi
    Par flash dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 20/09/2002, 10h15
  5. Réponses: 2
    Dernier message: 27/05/2002, 19h46

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