Empêcher envoi multiple requêtes ajax
Bonjour,
Je ne comprends ni pourquoi ni comment, mais j'ai une page phtml qui fait appel à une page php par le biais de $.ajax de jQuery et parfois, mon navigateur envoie 2 requêtes, ou plus, d'un coup. Si je re-clique, ça renvoie à chaque fois les anciennes requêtes j'imagine.
Pourtant, en cherchant sur internet, j'avais trouvé unbind, mais ça ne change rien... En ajoutant async : false, le bug se produit moins souvent.
Voici la requête :
Code:
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
| $('#transfer').click(function() {
$.ajax({
url: '/index/update',
async: false,
data: {
tid: eventId,
wid: '<?php echo $this->wid; ?>',
statut: 4
},
type: "POST",
success: function(responseText) {
// on change la couleur
if(event.color == "green") {
event.color = "darkblue";
} else {
event.color = "green";
}
$('#calendar').fullCalendar('updateEvent', event);
$('#transfer').unbind('click');
},
error: function(jqXHR, textStatus, errorThrown) {
alert('Impossible de marquer la tâche comme "transferée"');
$('#transfer').unbind('click');
}
})
}); |
Je précise tout de même que je ne suis pas expert en jQuery...
Merci pour vos réponses.