2010-07-21 3 views
4

Ce post JSON fonctionne, mais si je commence à les cliquer rapidement, il commence à renvoyer 500 erreurs. Je suppose que c'est parce qu'ils ne font pas la queue correctement, et ils tombent en morceaux quand ils ne peuvent pas sortir un par un. Y at-il un moyen de mettre en file d'attente dans JSON?Envoyer plusieurs requêtes JSON crée une erreur 500

Voici mon bouton HAML:

= f.check_box :has_sticker, :style => 'width: 20px;', :class => "orgs_deals_admin_save" 

Et voici mon jQuery:

$('.orgs_deals_admin_save').live('click', function() { 
    var button = $(this); 
    var form = button.closest('form'); 
    var dataString = form.serialize(); 
    $.ajax({ 
     url: form.attr('action') + '.json', 
     dataType: 'json', 
     type: 'POST', 
     data: dataString, 
     success: function(data) { 
     } 
    }); 
}); 
+0

Je pense que vous devriez essayer de voir pourquoi votre code côté serveur a échoué. – Pointy

Répondre

1

Cela est dû au fait que par défaut asynchrone est défini sur true. Si vous voulez qu'ils soient traités dans le même ordre que vous les avez envoyés, définissez asynchrone sur faux.

+0

Merci Anders. Tu es un génie. J'imagine que vous codez des robots qui finiront par conquérir le monde pour gagner leur vie. – Trip

+0

@Trip, haha, facile avec le jamaican maintenant. Mais vous devriez certainement regarder pourquoi cela échoue du côté du serveur. – Anders

+0

Attendez, de quoi parlions-nous? .. oh yah..Je l'ai mis à async: false, et cela a semblé fonctionner car il ne me permettrait pas de poster jusqu'à ce qu'un autre soit sorti. Ce qui était tout ce dont j'avais besoin pour réussir. – Trip

1

500 est le code de problème d'erreur du serveur, donc je suppose qu'il ya un problème avec le traitement de votre script sur la côté serveur