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 :

XSL + <br />


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut XSL + <br />
    Bonjour, dans mon fichier .xml j ai des champs du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <texte>blablabla <br /> blablabla
    Comment précisez dans le .xsl qu'il ai a la ligne chaque fois qu'il rencontre un <br /> ???

  2. #2
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Bonjour,

    qu'appelles-tu "aller à la ligne" ?

    La sortie de ta transformation est-elle du texte, du xml, du HTML ?
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut
    la sortie se fait en html, et quand je dis aller a la ligne.
    C est en fait que comme on ne peux pas mettre de html dans un fichier xml, comme faire pour que le xsl l'interprete comme une balise html <br /> ?

  4. #4
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Si je comprends bien, les balises <br /> ne se retrouvent pas dans ton HTML de sortie ? Cela doit venir de la façon dont tu as écrit tes templates, sans doute en utilisant un xsl:value-of qui ne renvoit que le texte de l'élément. Cela devrait plutôt ressembler à ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <xsl:template match="texte">
      <p>
        <xsl:copy-of select="text()|br"/>
      </p>
    </xsl:template>
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut
    Voia ce que j'ai fait (j'ai appris hier, le xsl...)
    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
    <xsl:template match="texte">
      <p>
    	<xsl:copy-of select="text()|br"/>
      </p>
    </xsl:template>
     
    <xsl:template match="/">
    	<html xmlns="http://www.w3.org/1999/xhtml">
    		<head>
    			<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
    		</head>
    		<body>
                               <xsl:apply-templates select="texte" />
                    </body>
              </html>
    </xsl:template>
    Mais ce ne marche pas.

  6. #6
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Citation Envoyé par ToxiZz
    Voia ce que j'ai fait (j'ai appris hier, le xsl...)
    Il va falloir perséverer !

    Ca ne marche pas, sans doute parce que le <xsl:apply-templates select="texte"/> suppose que <texte> est le fils du noeud racine, ce qui en ferait l'élément racine qui englobe tout le reste du XML. Est-ce le cas ?
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut
    Non ce n est pas le cas, voici un ex de mon fichier xml :
    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
    <racine>
    	<nouveaute id="4">
    		<date>09-01-06</date>
    		<image>modules/nouveautes/images/mini/</image>
    		<titre>n8-crew au 10 Days Off – Lundi 25-07-05 : Inscriptions Ouvertes !</titre>
    		<texte>Premier voyage n8-crew pour une soirée explosive en prévision ! En effet, lundi 25 juillet 2005, n8-crew aura le plaisir de vous emmener aux portes du Vooruit à Gand pour la soirée de clôture des 10 Days Off.  <br />
    <br />
     
    Au programme de la soirée, 3 salles :<br />
    <br />
    - La première salle acceuillera en tête d’affiche, le très en vue Dj Hell et les non moins connus frères Ali et Basti Schwarz, alias Tiefschwarz ; ce trio d'enfer clôture les 10 Days Off avec un set collectif d'une durée de 8 heures !  <br />
    - Non moins de sept Dj’s à l’affiche de la seconde salle<br />
    - La boîte bruxelloise « Dirty Dancing » prendra possession de la dernière salle avec les résidents Cosy Mosy et Sweatshop ainsi que d’autres artistes comme The Neon Judgement ou encore Kiki.<br />
    <br />
    A noter que la majorité des artistes présents sont belges…<br />
    Pour plus d’infos, consultez la rubrique « évènements ».</texte>
    		<commentaire nombre="0">index.php?page=commentaires&amp;NrNouveaute=4</commentaire>
     
    	</nouveaute>
    </racine>
    J'ai donc modifier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <xsl:template match="/racine/nouveaute/texte">
      <p>
    	<xsl:copy-of select="text()|br"/>
      </p>
    </xsl:template>
    Mais les <br /> ne sont tjs pas interpreter .

  8. #8
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Ce n'est pas cela qu'il faut modifier, c'est le chemin d'accès nécessaire pour accéder à l'élément texte en partant de la racine :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:apply-templates select="racine/nouveaute/texte" />
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut
    C'est ce que j'avais fait aussi, et ca marche en fait.

    Mais le problème c'est que je ne l avais pas vu tt de suite car je travaille sous mozilla.

    Cette technique m affiche bien,le retour a la ligne, mais uniquement sous IE, pkoi firefox ne le fait pas aussi ???

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut
    De la meme maniere, comment faire par exemple si le fichier xml contient des balise <b> </b>, ...

    ex:
    <racine>
    <nouveaute id="4">
    <date>09-01-06</date>
    <image>modules/nouveautes/images/mini/</image>
    <titre>blablabla</titre>
    <texte>blablabla <b> txt en gras </b> blablabla
    </nouveaute>
    </racine>
    Comment dire dans le fichier xsl d'interpreter les balise <b> comme gras ...

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 215
    Par défaut
    il suffit d'utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:copy-of select="texte" />
    Et le code html sera interpreté !

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

Discussions similaires

  1. alterner les couleurs dans un tableau avec xsl
    Par Eithelgul dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 03/05/2015, 23h29
  2. [xsl][XML] création d'un index
    Par Boosters dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 28/11/2002, 08h29
  3. xml -> xsl -> xml
    Par virgile04 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 10/10/2002, 16h53
  4. [XSLT] inclure du XSL dans une balise html
    Par iaa dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/08/2002, 15h57
  5. Cours en Français sur XML-XSL et XPath
    Par Community Management dans le forum XSL/XSLT/XPATH
    Réponses: 0
    Dernier message: 25/04/2002, 15h46

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