Hello,

J'ai une question au sujet de jquery / ajax

Sur mon site il y a plusieurs <button> qui permettent de charger des données en ajax, ce qui prend quelques secondes

Quand je clique sur un seul <button> tout se passe normalement

Mais si je clique sur d'autres boutons avant que la première requete ait fini de charger, seul le premier bouton sur lequel j'ai cliqué affichera les données correctement.

Firebug me montre que les responses de chaque request sont chargées correctement

Voici mon code:

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
$( document ).ready(function() {
 
	$("body").on("click", "button.toggle", function(){
 
		currentBtn 	= $(this);
 
		currentBtn.addClass( "blink" );
 
		$.post("http://localhost/ajaxcall.php",{ 
 
			arrayId: currentBtn.val(), 
			timeout: 5,
 
		}, function(data, status){
 
			currentBtn.after( data.output );
 
		}).done(function( data ) {
 
		}).fail(function() {
			alert( "error ajax" );
		}).always(function() {
 
			currentBtn.removeClass( "blink" );
 
		});
En gros et pour résumer, si je clique sur plusieurs boutons rapidement, les résultats chargés par ajax s'afficheront tous sous le même bouton alors que chaque résultat devrait s'afficher sous le bouton correspondant sur lequel on a cliqué, même si on a cliqué comme un malade sur les boutons

Est-ce que vous arrivez à repérer l'erreur par hasard ?

Merci !