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

Taglibs Java Discussion :

javascript et taglib


Sujet :

Taglibs Java

  1. #1
    Membre confirmé Avatar de Space23
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 185
    Par défaut javascript et taglib
    J'ai construit mon application Web en utilisant des taglibs un peu partout pour récupérer les valeurs de certains champs puis j'ai découvert le framework javascript Ext qui m'a permis d'améliorer nettement la présentation de mon appli Web.

    Seulement maintenant mes champs texte sont crées en javascript mais avant ils était donc prérremplis avec des valeurs de session ou de request.

    Sachant que taglibs se trouve côté serveur et javascript côté client, comment je peux faire pour récupérer ses valeurs en javascript?

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Il y a pas mal de possibilités, mais en voici une
    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
     
    <html>
    <head>
    <script>
     
    var uneVariableJavascript = "<%=request.getAttribute("leNomVar")%>";
    var uneDeuxieme = "<%=session.getAttribute("uneAutre")%>";
    ...
     
    </script>
    </head>
    <body>
    ...
    </body>
    </html>
    Si ce n'est pas ce que tu cherches, précise un peu
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé Avatar de Space23
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 185
    Par défaut
    Oui en gros ça serait une possibilité si ça marchais mais si je fais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <script>
                var uneVariableJavascript = "(String)request.getAttribute('vartest');";
                alert("la var :"+uneVariableJavascript);
    </script>
    ça ne récupére pas la valeur . J'oublie quelque chose?

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Tu oublies certainement de mettre 'vartest' dans le request sous forme d'attribut...

    Il ne faut pas confondre request.getParameter('vartest') qui viendrait d'un formulaire appelant ou d'un paramètre passé par l'url (href="/monAppli/maPage.jsp?vartest=toto")
    de request.getAttribute('vartest') qui lui répond forcément à une mise dans le context request par un request.setAttribute('vartest', 'laValeur de vartest');
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé Avatar de Space23
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 185
    Par défaut
    Servlet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    request.setAttribute("vartest", "testPassage aaaaaaaaaaaaa");
    maPage.jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <script>
                var uneVariableJavascript = "(String)request.getAttribute('vartest');";
                alert("la var :"+uneVariableJavascript);
    </script>
    resulat du alert :
    (piece jointe)

    La commande request.getAttribute n'est pas interprêté
    Images attachées Images attachées  

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Damned, j'ai zappé le détail qui tue !
    C'est normal qu'il t'affiche ça, regarde mon exemple.
    Le code est encadré par <%= ... %>
    (ce qui veut dire qu'on affiche le résultat de l'expression côté serveur)

    Toi, en faisant,
    var uneVariableJavascript = "(String)request.getAttribute('vartest');";
    tu affectes le littéral (String)request.getAttribute('vartest') à la variable uneVariableJavascript
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre confirmé Avatar de Space23
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 185
    Par défaut
    ah oui Exact

    C'est sur qu'en recopiant le bon code ça marche mieux.

    Merci OButterlin

  8. #8
    Membre confirmé Avatar de Space23
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 185
    Par défaut
    Ca marche lorsque j'inclut le script dans ma page jsp, seulement quand j'écris ce code dans un fichier js externe ça ne réinterprete pas le code (surement parce qu'il est interprété côté serveur).
    Il n'y aurait pas un moyen de passer outre cela car comme je l'ai dit mon formulaire est totalement construit grâce à un framework javascript et j'aurais besoin de de le préremplir avec des valeurs retournées par la Servlet.

  9. #9
    Membre confirmé Avatar de Space23
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 185
    Par défaut
    Bon j'ai trouvé la parade, je vais chercher les infos dans ma page jsp, je les met dans des champs invisibles puis je vais les chercher par mon fichier js.
    C'est un peu moche mais la seule soluce que je vois.

  10. #10
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Tu pourrais t'en sortir autrement...
    Il suffirait de mettre le code d'initialisation dans une méthode appelée sur l'évènement "onload".

    Le problème avec un javascript externe, c'est qu'on ne sait pas exactement quand il sera chargé.
    Par contre, après l'évènement "onload", on est certain qu'il est chargé !

    Ce serait un peu comme ceci
    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
    <html>
    <head>
    <script src="..."></script>
    
    <script>
    
    function pageLoaded()
    {
       var maVar1 = "<%=request.getAttribute('vartest')%>";
       ... etc
    }
    
    </script>
    </head>
    
    <body onload="pageLoaded()">
    ...
    </body>
    </html>
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. taglib et javascript
    Par felix79 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 24/06/2009, 14h27
  2. [JSTL] Taglibs et javaScript
    Par Snyper dans le forum Taglibs
    Réponses: 19
    Dernier message: 11/05/2009, 23h26
  3. JSControlsTags, taglib pour controles javascript
    Par azerr dans le forum Taglibs
    Réponses: 33
    Dernier message: 25/02/2009, 11h26
  4. Conflit javascript taglib ?
    Par Esil2008 dans le forum Servlets/JSP
    Réponses: 13
    Dernier message: 20/07/2007, 18h19
  5. [Taglib / JSP / Javascript] Liste imbriquées
    Par Resyek dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 12/05/2006, 21h26

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