Bonsoir,

J'exécute plusieurs fonctions, la première fonction récupère la liste des derniers messages et la deuxième fonction récupère les derniers messages d'un seul utilisateur.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
$( "body" ).on( "click", "#miss", function(){
	if(timermsg !='') clearTimeout(timermsg); timermsg='';
	refreshlistmsg();
});
La fonction pour la liste de messages d'un seul utilisateur :

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 refreshmsg(titi){														
	jQuery.ajax({
		type: 'POST', 
		url:  'controllers/accueil/msg.php', 
		dataType : 'json',
		data: { id: titi },
		success: function(json) {												
			var xxx  = JSON.stringify(json);																	
			var obj    = eval('(' + xxx + ')');
 
			var msgajx = '';
			for( var x in obj ) {
				var ligne = obj[x];
				msgajx += ligne.de;
			}
			$('#msgajax').html(msgajx);																
		} 
	});
	timer = setTimeout("refreshmsg(titi)", 20000);
}
La fonction pour la liste des messages, qui fera appel à la fonction liste des messages d'un utilisateur:

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
function refreshlistmsg(){
	jQuery.ajax({
		type: 'POST', 
		url:  'controllers/accueil/messages.php', 
		dataType : 'json',
		success: function(jsonn) {															
			var zzz     = JSON.stringify(jsonn);														
			var objj    = eval('(' + zzz + ')');
			var msgajax = '';
			for( var z in objj ) {				
				var ligne = objj[z];
                                titi = ligne.de
				alert(titi);
                                id = msg + ligne.de;
 
				$( "body" ).on( "click", "#"+id, function(){
 
					if(timer !='') clearTimeout(timer); timer='';
					alert(titi);
					refreshmsg(titi);
				});											
			}														
		} 
	})
	timermsg = setTimeout("refreshlistmsg()", 20000);	
}
Le soucis est le suivant:

Quand je fais le premier clique sur #miss, la fonction refreshlistmsg() s'exécute et l'alert(titi) de la ligne 13 m'affiche bien les IDs voulu 5 4 1 2, mais le deuxième clique de la ligne 16 fait l'alert(titi) de la ligne 18 m'affiche 2 2 2 2 c.a.d quatre fois le dernier ID du premier alert(titi)

Comment je peux faire pour avoir les mêmes IDs du le premier alert dans le deuxième alert ?
Et aussi comment faire pour que le deuxième alert ne s'exécute qu'une seule fois lord du clique de la ligne 16 ?

Bonsoir :-)