PB affichage resultat fct Javascript dans XSL

Résolu/Fermé
clint_889 Messages postés 10 Date d'inscription jeudi 8 juillet 2010 Statut Membre Dernière intervention 19 octobre 2010 - Modifié par clint_889 le 27/08/2010 à 18:29
clint_889 Messages postés 10 Date d'inscription jeudi 8 juillet 2010 Statut Membre Dernière intervention 19 octobre 2010 - 20 sept. 2010 à 17:18
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>   
...  


A voir également:

2 réponses

clint_889 Messages postés 10 Date d'inscription jeudi 8 juillet 2010 Statut Membre Dernière intervention 19 octobre 2010 3
Modifié par clint_889 le 30/08/2010 à 11:46
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>
0
clint_889 Messages postés 10 Date d'inscription jeudi 8 juillet 2010 Statut Membre Dernière intervention 19 octobre 2010 3
20 sept. 2010 à 17:18
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+
0