Salut !

Oui le titre est un peu racoleur, mais bon lol ! faut bien de temps à autres ^^ !

Donc voilà mon souci, je suis pas trop un pro en Ajax, c'est la première fois que je l'utilise vraiment...

A la base cela n'a pas été simple de le combiner avec mon site web et le modèle MVC ...

J'ai donc repris mes fonctions, et ait essayé de les rendre le plus générique possible ... par contre problème :


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
 
//Bandeau.jsp
<a href="javascript:MakeRequestMenu('Test')"> Test </a> 
//j'ai une servlet qui est mappée à "Test"
 
//test.js
function MakeRequestMenu(servlet){
getXmlRequest(); //ici je récupère l'objet active X etc ... pas utile à détailler
 
req.onreadystate = newResponseToDiv;
req.open("GET", servlet, true) //ici j'utilise mon paramètre servlet pour la généricité, jusqu'ici tout fonctionne ....
req.send(null);
//desfois je mets un "return false;" ou pas, pas trop saisi l'utilité ....
}
 
function newResponseToDiv(){
if (req.readyState ==4 && req.status == 200){
      var tmp = req.responseText;
      if (typeof(tmp)!= "undefined") {
          mdiv = document.getElementById("contenu");
          mdiv.innerHTML = tmp;
     }else alert("Erreur pendant la mise à jour de la page");
}
}
Tout ce code fonctionne ... après si il y a des erreurs dans le code ou des ajustements à faire j'ai l'oreille ouverte ...

Après j'ai voulu placer le "contenu" dans un parametre "div" histoire que je n'ai pas à réécrire une fonction javascript pour chaque zone de ma page ...
Comme cela :

Mais là le rafraichissement de la page ne fonctionne plus ...

Est ce que quelqu'un a une idée ?

Code qui ne fonctionne plus, inspiré du premier exemple :
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
 
//Bandeau.jsp
<a href="javascript:MakeRequestMenu('Test','contenu')"> Test </a> 
//j'ai une servlet qui est mappée à "Test", j'ai ajouté 'contenu' qui est une de mes Divs CSs ...
 
//test.js
function MakeRequestMenu(servlet, div){
getXmlRequest(); //ici je récupère l'objet active X etc ... pas utile à détailler
 
req.onreadystate = newResponseToDiv(div); // pour faire circuler le paramètre ...
req.open("GET", servlet, true) //ici j'utilise mon paramètre servlet pour la généricité, jusqu'ici tout fonctionne ....
req.send(null);
//desfois je mets un "return false;" ou pas, pas trop saisi l'utilité ....
}
 
function newResponseToDiv(div){
if (req.readyState ==4 && req.status == 200){
      var tmp = req.responseText;
      if (typeof(tmp)!= "undefined") {
          mdiv = document.getElementById(div); // la ca ne passe plus, la propagation du parametre se fait mal ou je ne sais pas !
          mdiv.innerHTML = tmp;
     }else alert("Erreur pendant la mise à jour de la page");
}
}
Merci pour votre précieuse aide...