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

Servlets/JSP Java Discussion :

Ajout de code Javascript lors du traitement java - incompatibilité Firefox IE


Sujet :

Servlets/JSP Java

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2008
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 146
    Points : 84
    Points
    84
    Par défaut Ajout de code Javascript lors du traitement java - incompatibilité Firefox IE
    Bonjour à tous,

    j'ai un problème lié à du javascript qui n'apparait que sur Firefox (alors que sous IE cela fonctionne...pour une fois!!)

    mon problème est donc: j'affiche un jsp classique, rien de spécial, et j'y affiche une grille (un tableau) avec des liens en entête de ligne. Lorsque je clique sur le lien, dans mon code java, j'applique un traitement qui me permet de générer du code javascript afin de l'insérer à la page (donc sur le même jsp). Ce code javascript me permet d'afficher un tableau supplémentaire en dessous du premier.

    Or cela fonctionne parfaitement sous IE et pas du tout sous Firefox.
    Mon code java pour afficher le javascript est assez simpliste:

    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //...traitement....
    PrintWriter out = res.getWriter(); //res de type httpServletResponse
    out.println(resultat.getChaineJs()); //resultat.getChaineJs() retourne une String (par exemple: "<script>alert('ok');</script>")
    out.flush();
    out.close();
     
    //....fin....

    Je me suis rendu compte que sous IE lorsque je fais mon out.println(...), il insère bien le code sur la même page et donc mon premier tableau est bien réaffiché, alors que pour Firefox, il me charge une nouvelle page (page blanche) et donc du coup mon premier tableau a disparu ainsi que tous les éléments (<div> notamment) qui étaient cachés lors du premier affichage de la page et qui sont utilisés par le Javascript inséré. Donc du coup mon code Javascript se retrouve perdu sous Firefox, et cela explique mon problème.

    Maintenant, je souhaiterais savoir si cela est normal que sous IE il insère le code à la suite de la première page, et comment puis-je faire pour réaliser la même chose sous Firefox? et ensuite, peut-être n'utilise-je pas la bonne méthode pour insérer mon Js à la suite...

    Merci pour votre aide

  2. #2
    Membre confirmé
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Points : 642
    Points
    642
    Par défaut
    Peux tu nous montre le code html généré ?

    Petite question sous firefox utilises-tu firebug ? qui pourrait te mettre sur la piste de l'erreur.

  3. #3
    Membre régulier
    Inscrit en
    Décembre 2008
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 146
    Points : 84
    Points
    84
    Par défaut
    Oui j'utilise Firebug mais peut-être mal... en tout cas je n'ai rien repéré, si ce n'est que le code html de la première page n'est plus dispo, et il y a uniquement celui le nouveau Javascript qui est affiché.

    Sous IE, le même code html que la première page est généré, avec en plus le javascript que j'ai ajouté. Ce qui me donne le comportement attendu.

  4. #4
    Membre régulier
    Inscrit en
    Décembre 2008
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 146
    Points : 84
    Points
    84
    Par défaut
    J'apporte quelques éléments supplémentaires:

    sous IE - en fait le code Javascript que j'insère via le out.println(..) n'est pas visible dans le code Html, il est exécuté uniquement. Du coup j'ai exactement le même code html entre la première page (avant de cliquer sur le lien) et la seconde page (apparition du tableau supplémentaire à l'aide du Javascript)!

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

Discussions similaires

  1. Exécution d'un code javascript lors de l'envoie d'un formulaire
    Par skander222 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/05/2014, 10h17
  2. Réponses: 3
    Dernier message: 22/09/2011, 16h02
  3. Réponses: 0
    Dernier message: 24/05/2011, 15h00
  4. Exécuter un code javascript lors du clique sur un textbox
    Par krolis dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 31/03/2010, 15h46
  5. [CKEditor] Fckeditor [v 2.6] sous Firefox ajoute du code javascript bizare au contenu de la page
    Par ghaliloo dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 01/08/2008, 09h26

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