Xml/xsl et javascript

dje-dje -  
 totorigolo -
Question bete:Est-ce que je peux mettre du javascript dans ma feuille xsl ?
D'avance merci

2 réponses

  1. Utilisateur anonyme
     
    HI 2DJE

    Question pas aussi "bête" que tu sembles le croire ... LOL

    Je débute en XML et je ne suis pas trop sûr que le code ci dessous soit tout à fait conforme à la norme mais il marche (du moins avec IE6) !
    D'ailleurs si quelqu'un pouvait me dire si on a la droit en XML d'écrire ou non ce serait sympa ;:-)
    Je crois que la balise <script> fait partie des balises du XHTML et donc ca fonctionne ... mais ca reste à vérifier !

    Alors voici mon code :

    D'abord la page XML test.xml :

    <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
    <!-- Lien vers la feuille de style -->
    <?xml-stylesheet type="text/xsl" href="test.xsl"?>
    <php xmlns:xlink=" http://www.w3.org/1999/xlink">
    <auteur xlink:href="mailto:nbp@multimania.com" xlink:type="simple">Php</auteur>
    <avis>le XML c'est cool !</avis>
    </php>

    Puis la feuille de style test.xsl :

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet xmlns:xsl=" http://www.w3.org/TR/WD-xsl"
    xmlns=" http://www.w3.org/TR/xhtml1/strict"
    xmlns:xlink=" http://www.w3.org/1999/xlink">
    <xsl:template match="/">
    <html>
    <head>
    <script language="javascript">
    alert('hello 2DJE');
    </script>
    </head>
    <body>

    <p>Par <xsl:apply-templates select="php/auteur"/></p>
    <p>Mon avis : <xsl:value-of select="php/avis" /></p>
    </body>
    </html>
    </xsl:template>

    <!-- Modele pour element auteur
    -->

    <xsl:template match="auteur">
    <xsl:element name="a">
    <xsl:attribute name="href">
    <xsl:value-of select="@xlink:href" />
    </xsl:attribute>
    <xsl:value-of />
    </xsl:element>
    </xsl:template>

    <xsl:template match="avis">
    <xsl:value-of />
    </xsl:template>

    </xsl:stylesheet>

    Et voilà !

    @+
    Philippe

    PS : si tu connais des sites sur XML et des bons éditeurs XML/XSL + XSLT/XSL-fo je suis prenneur ...
    0
    1. dje-dje
       
      merci bocou
      je vais m'en donner a coeur joie
      reponse au PS (editeur de texte) : a priori ultra edit est le meilleur
      pour le xml il y a aussi xml writer.(ca verifie qu'un document est well formed ,ca gere les dtd externes)
      0
    2. sbareau Messages postés 13 Statut Membre
       
      salut,
      comme editeur xml/xslt il ya aussi xml-spy.
      steph
      0
    3. dje-dje
       
      j'ai encore un probleme
      ton bout de code javascript marche sans probleme.
      la ou ca coince c'est que j'ai fait un script qui altere la propriete visibility qui vaut show ou hidden d'un calque.
      ces fonctions fonctionnent (un peu redondant comme formule) je les ai tester dans une page html.
      il suffit que je place rien que la definitions de ces fonctions dans mon fichier xsl pour ne plus rien afficher!!
      je cherche explication ...
      ou un autre moyen de faire la meme chose
      0
    4. Utilisateur anonyme
       
      B'soir

      Si tu utilises des styles il faut obligatoirement que tu définisses la propriété display si g bien compris ... ;:)

      J'ai lu ça sur :

      http://cui.unige.ch/eao/www/xml/Xsl.html#CSS

      J'espère que ca t'aidera

      @+
      Php

      [[ The Truth is Out There ]]
      0
      1. dje-dje > Utilisateur anonyme
         
        j'ai trouve la source de mon probleme!!
        j'ai tirer mon javascript d'un code html et je l'ai recopier dans ma feuille de style.Le hic : les commentaires.
        Ils ne s'ecrivent pas de la même façon en xml et html.
        Du coup je les ai vire...
        Radical mais bon...
        0
  2. fanellia Messages postés 6 Statut Membre
     
    bonjour, je me permet d'intervenir parce que j'ai gros problème.J'ai un document sur une feuille de style xsl et je ne peux pas le lire.
    C'est une conversation msn, pourriez-vous me dire ce que je dois faire? merci d'avance
    0
    1. totorigolo
       
      essaye d'utiliser jabber voir si ca regle le probleme :p
      0