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 :

[XSLT] importer variable javascript


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Décembre 2005
    Messages : 117
    Par défaut [XSLT] importer variable javascript
    j'ai un souçi, je souhaiterai affecter la valeur d'une variable javascript à une variable XSL. (la transformation XML/XSL se fait coté client).
    J'ai pu trouvé ce script sur google, mais ça ne fonctionne pas du tout.
    Est ce que quelqu'un pourrait m'aider ?
    Merci d'avance

    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
    21
    22
    23
    24
    25
    26
    27
    <xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
     
    <script type="text/javascript"> <![CDATA[
     
        var maVariable = "variable que je veux affecter";
     
    ]]></script>
     
     
    <msxsl:script language="JavaScript" implements-prefix="js">
     
        function getMaVariable() {
            return maVariable;
        }
        function setMaVariable(newValue) {
            maVariable = "newValue";
            return ""; // grossiere astuce pour que "xsl:value-of" soit content...
        } 
    </msxsl:script>
     
     
    ...
    <xsl:value-of select="js:getMaVariable()"/>
    ...
     
    </xsl:stylesheet>

    Il ne peut pas accéder à maVariable, il ne la connait pas.

  2. #2
    Membre émérite
    Inscrit en
    Octobre 2005
    Messages
    847
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 847
    Par défaut
    - je connais pas ce genre de code, mais tu peux nous dire quel est le message exact?

    - si ta variable est statiques quel est l'interêt du JS? (pour quoi ne pas la mettre dans un fichier xml variables.xml et y acceder avec xsl)

    si vraiment tu veux vraiment faire un truc dans le genre, je te conseil de faire une petite extension java et l'utiliser dans ton xsl....

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Décembre 2005
    Messages : 117
    Par défaut
    Oui merci pour ta réponse valal, je suis d'accord avec toi, j'ai pensé également a un fichier xml. Mais y'a quand meme un problème non négligeable (le multi utilisateurs), je m'explique:

    Suite à l'authentification de l'utilisateur par envoi du formulaire, le script cgi me renvoie un numéro (niveau accès utilisateur) que je dois affecter à la variable de mon XSL pour la transformation.
    Mon fichier XSL est associé à un XML qui me construit ma page (coté client).
    Donc, le XSL possède une variable globale (un niveau, en gros un chiffre associé au login) qui n'affiche que ce dont l'utilisater est habilité !

    J'ai essayé de faire cette transformation en javascript avec addParameter() mais ça ne fonctionne 4 fois sur 5 <==> donc pas bon.
    J'essai de trouver une solution mais rien n'y fait !

    PS: pour ce qui est du fichier xml, le pb est que pour du multi utilisateurs, le serveur ne renverra peut être pas le bon fichier au client, surtout si 2 utilisateur se connectent au même moment.

    Je sais pas si j'ai été clair, si vous voulez plus d'infos, n'hésitez pas.
    Comment puis-je faire ?


    Merci d'avance

  4. #4
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Par défaut
    Citation Envoyé par Mike35
    J'ai essayé de faire cette transformation en javascript avec addParameter() mais ça ne fonctionne 4 fois sur 5 <==> donc pas bon.
    Je ne comprends pas trop

    J'utilise regulirement cette methode dans ce sens et je n'ai aucun pb.
    Je serais etonné que la balise msxml script te soit utile puisqu'elle ne te permettra pas d'acceder aux données de ta page HTML ni au dom "HTML".
    Tu ne peux qu'acceder aux variables cree dans cette balise

Discussions similaires

  1. [XSLT] Import vs. include
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 11/05/2016, 21h47
  2. [C#] Variable javascript accessible
    Par stailer dans le forum ASP.NET
    Réponses: 12
    Dernier message: 01/04/2005, 12h18
  3. Variables javascript non correctement définies
    Par LLaurent dans le forum XMLRAD
    Réponses: 5
    Dernier message: 11/05/2004, 12h39
  4. [XSLT] les variables???
    Par Lydiane dans le forum XSL/XSLT/XPATH
    Réponses: 11
    Dernier message: 09/08/2002, 16h17

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