PB affichage resultat fct Javascript dans XSL [Résolu/Fermé]

Signaler
Messages postés
10
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
19 octobre 2010
-
Messages postés
10
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
19 octobre 2010
-
Bonjour,

J'ai un souci au niveau de l'affichage du résultat de ma fonction javascript
Je cherche a afficher un chemin stocker dans un fichier XML.
Or je n'arrive pas a trouver la syntaxe me permettant de prendre en compte les caractères spéciaux.

Le résultat de mon chemin est :
\hw..graphicsMicroVuRAPPORTSXml 00726T171900 1013_43_02.pdf.xml
au lieu de :
\\hw\..\graphics\MicroVu\RAPPORTS\Xml\20100726T171900 1013_43_02.pdf.xml

ça doit être tout simple.. mais là je cale vraiment trop ! HELP

La fonction javascript est inclue dans un boucle XSL
   <xsl:element name="input">  
     <xsl:attribute name="type">checkbox</xsl:attribute>  
       <xsl:attribute name="onClick">  
         javascript :  
           {  
            TabRES="<xsl:value-of select ="Url" />";  
            Position="<xsl:value-of select ="position()" />";  
            alert(TabRES + "  " + Position);  
            }  
        </xsl:attribute>  
     </xsl:element>  


Voici un bout du code XML :
<?xml version="1.0" encoding="Windows-1252" ?>   
<ListeControle>  
  <Controle id="1">  
  <Nom>Texte n°plan: Texte</Nom>   
  <Plan>1013_43_02.pdf</Plan>  
  <Url>\\hw\..\graphics\MicroVu\RAPPORTS\Xml\20100726T171900 1013_43_02.pdf.xml</Url>   
  <Heure>16.08.2010 12:10:26</Heure>   
</Controle>  

<Controle id="2">  
  <Nom>Texte n°plan: Texte</Nom>   
  <Plan>1013_43_02.pdf</Plan>   
...  


2 réponses

Messages postés
10
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
19 octobre 2010
3
J'ai beau essayer d'insérer une balise CDATA, je coince ! Si qqun a une idée...

J'avais pensé à ça, mais sans succès :
    <xsl:attribute name="onClick">
       javascript :
       {
        TabRES="<xsl:value-of select ="Url" />";
        alert(<![CDATA[TabRES]]>);
        }
     </xsl:attribute>
Messages postés
10
Date d'inscription
jeudi 8 juillet 2010
Statut
Membre
Dernière intervention
19 octobre 2010
3
je m'auto-réponds pour ceux qui seront un jour coincer comme moi :
Pour afficher ça :
\\hw\..\graphics\MicroVu\RAPPORTS\Xml\20100726T171900 1013_43_02.pdf.xml 

J'ai du affecter cela dans ma variable javascript
document.write("\\\\hw\\..\\graphics\\MicroVu\\RAPPORTS\\Xml\\20100726T171900 1013_43_02.pdf.xml ");



Mon problème venait que le caractère "\" est considéré comme caractère spécial par javascript (ouille, mes lacunes en javascript font mal ! :-/) La solution consiste donc tout simplement a doubler les back slash pour obtenir le chemin écrit de façon correct.

Puisque je souhaite garder mon fichier XML tel quel avec des données propres j'ai remplacé les caractères "\" par "\\" directement dans ma feuille XSL. Pour cela j'ai utiliser l'astuce décrite ci-dessous :
http://www.wikistuce.info/doku.php/xml_xsl/remplacer_une_chaine_de_caracteres

a+