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 :

Rafraichir page et garder variable


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 34
    Par défaut Rafraichir page et garder variable
    Bonjour,

    J'ai ma page JSP qui se rafraichi toutes les minutes grace à response.setHeader.

    Ma JSP comporte un onglet, qui quand je clique dessus, devient visible ou invisible (style.display ).

    Le probleme est que lors du rechargement de la page, l'onglet se ferme tout le temps.

    Je me suis dit qu'il fallait alors que je fasse un booleen pour savoir si je dois laisser ouvert l'onglet. Sauf que je ne sais pas trop comment faire!

    Aidez-moi svp...

    Merci par avance pour vos réponses.

  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 faudrait faire quelque chose de ce style (page JSP):
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta http-equiv="refresh" content="5"/>
     
    <script type="text/javascript">
     
    function showTab(tabId)
    {
       // Cacher l'onglet actuel
       var pr = document.getElementById(document.forms[0].tabId.value);
       if ( pr != null ) pr.style.display = "none";
     
       // Afficher l'onglet demandé
       var el = document.getElementById( tabId );
       if ( el == null ) el = document.getElementById("tab1");
       el.style.display = "block";
       document.forms[0].tabId.value = tabId;
    }
     
    function pageLoaded()
    {
       showTab(document.forms[0].tabId.value);
    }
    </script>
    </head>
     
    <body onload="pageLoaded()">
     
    <form action="..." >
    <input type="hidden" name="tabId" value="<%=request.getParameter("tabId") == null ? "tab1" : request.getParameter("tabId")%>"/>
     
    <table><tr><td style="background:#808080" onclick="showTab('tab1')">Onglet 1</td><td style="background:#808080" onclick="showTab('tab2')">Onglet 2</td></tr></table>
     
    <div id="tab1" style="display:none">
     
    ONGLET 1<br>
    <br>
    Le contenu de l'onglet<br>
    pour l'exemple...
    <br>
    <hr>
    Affichage à <%=new java.util.Date().toString()%>
     
    </div>
     
    <div id="tab2" style="display:none">
     
    ONGLET 2<br>
    <br>
    Contenu 2
    <hr>
    Affichage à <%=new java.util.Date().toString()%>
     
    </div>
     
    </body>
    </html>
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 34
    Par défaut
    Salut,

    Le problème avec ta solution OButterlin est que lors du rechargement de la page, tabId est toujours null...
    Il suffit d'écrire la chose suivante pour le voir...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    <% if (request.getParameter("tabId") == null)%>
     <SCRIPT LANGUAGE="JavaScript">
    		alert("coucou");
    	</SCRIPT> <%
            }
    %>
    A chaque rechargement, on perd l'info...et mon problème réside là...Finalement, j'ai opté pour une "location" sur onLoad avec ma propre JSP et ma variable en parametre... Du coup un request.getParameter est possible.

    Je ne vois pas comment faire autrement en gardant response.setHeader. J'ai utilisé setTimeout...

    Merci en tout cas pour ton code qui m'a quand même inspiré.

    Magicwill.

  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
    Désolé de te contredire, mais j'ai testé le code et ça fonctionne.
    Tu as peut-être zappé le champ <input type="hidden" name="tabId" ...> au niveau du formulaire et qui est également positionné dans la fonction showTab

    Si tu copies le code dans une page de test, tu pourras vérifier que ça fonctionne

    A+
    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. Comment rafraichir une page avec une variable $_POST
    Par pierrot10 dans le forum jQuery
    Réponses: 0
    Dernier message: 10/01/2011, 08h44
  2. garder variable sur une boucle de 2 pages
    Par julienber dans le forum Langage
    Réponses: 8
    Dernier message: 10/02/2010, 11h44
  3. Rafraichir page et garder une variable
    Par magicwill dans le forum Général JavaScript
    Réponses: 19
    Dernier message: 25/07/2007, 14h05
  4. Réponses: 1
    Dernier message: 10/02/2006, 17h19
  5. Rafraichir page
    Par masseur dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 20/12/2005, 15h31

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