Bonsoir,
Voila je développe une petite page mélant JQuery et JSP.
Dans le script init.js on fait un load sur la div client de la page identification.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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> <title>Inscription / Connexion</title> <script src="scripts/jquery-1.3.1.min.js" type="text/javascript"></script> <script src="scripts/init.js" type="text/javascript"></script> <link href="styles/style.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="header"> <br /> <br /> <br /> <br /> </div> <div id="container"> <div id="page"> <div id="client"> </div><!-- end client --> </div><!-- end page --> </div><!-- end container --> <div id="footer"> <br /> <br /> </div> </body> </html>
Cette page contient deux item qui sont Se connecter et S'inscrire qui sont des menus "déroulants" que JQuery va faire apparaitre en doucher :
La div identification_jsp est la div qui contient ces deux menus.
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 function initializeMenu() { var vitesse = 1000; $("#identification_slide").hide(); $("#inscription_slide").hide(); $("#identification_slide_ctrl").click(function () { $("#identification_slide").toggle("slide",{ direction: "up" }, vitesse); if ( $("#inscription_slide").is(':visible') ) $("#inscription_slide").hide("slide",{ direction: "up" }, 500); }); $("#inscription_slide_ctrl").click(function () { $("#inscription_slide").toggle("slide",{ direction: "up" }, vitesse); if ( $("#identification_slide").is(':visible') ) $("#identification_slide").hide("slide",{ direction: "up" }, 500); }); } $('#identification_jsp').ready(initializeMenu());
Lorsqu'on clique sur chaque menu celui-ci s'ouvre lentement, puis on saisi son login et son mot de passe, on fait valider et là on utilise JQuery qui fait un appelle à la page de vérification sans recharger toute la page, puis on recharge dans la page index.jsp la partie Client avec identification.jsp :
Jusque là tout va bien.
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 $('#identification_jsp').ready(function(){ $('#disconnect').click(function() { $.get('disconnect.jsp',{ login: $('#iLogin').val(), password: $('#iPassword').val() }, function() { $('#client').load('identification.jsp'); }); alert('fin de la fonction de deconnection'); }); $("#frmIdentif").submit(function(){ $.get('identification-xml.jsp',{ login: $('#iLogin').val(), password: $('#iPassword').val() }, function() { $('#client').load('identification.jsp'); }); return false; }); });
Si l'identification s'est bien passée, on n'affiche plus la même chose dans la page, on affiche Mon Compte et Se Déconnecter.
En cliquant sur déconnecter, on se déconnecte et on re load la page identification.jsp dans la partie client.
Et c'est là qu'est le problème, les scripts pour mes menus ne fonctionnent plus !
dans la page identification.jsp, il y a ceci :
Est-ce que savez d'où cela peut il venir ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <script src="scripts/effects.core.js" type="text/javascript"></script> <script src="scripts/effects.slide.js" type="text/javascript"></script> <script src="scripts/menu.js" type="text/javascript"></script> <script src="identification.js" type="text/javascript"></script> <div id="identification_jsp"> <%@page import="ide.IdentifierEJB"%> <jsp:useBean id="ident" class="ide.IdentifierEJB" scope="session"></jsp:useBean> <% if ( ident.getState() == IdentifierEJB.loggedin ) {... } else {.... }%> </div>
Merci d'avance.
Partager