2009-05-15 6 views
0

J'ai essayé d'exécuter 2 JQuery-ajax en même temps, mais il semble toujours faire le 1er JQuery-ajax avant le 2ème JQuery-ajax. Juste errant, est-il possible pour 2 JQuery-ajax de travailler en même temps pour la même page?Est-il possible que 2 JQuery-ajax travaillent en même temps pour la même page?

Par exemple:

Je créé une page qui sera permet à l'utilisateur d'insérer un lot d'enregistrements dans la base de données, et à la même page, il dispose d'une table pour afficher toutes les données contenues dans la base de données.

J'ai utilisé setInterval pour appeler une fonction et pour récupérer les données avec JQuery-ajax toutes les 5 sec. Les données renvoyées s'afficheront à l'écran, ce qui signifie que ces données seront mises à jour toutes les 5 secondes sur l'écran.

Lorsque j'ai appuyé sur un bouton de processus dans la même page pour insérer un lot d'enregistrements dans la base de données avec JQuery-ajax (cela peut prendre 2 minutes pour terminer le processus). À ce stade, l'écran ne pourra mettre à jour les données d'affichage sur l'écran qu'après que le processus d'insertion est terminé même ceux que j'ai définis setInterval pour récupérer les données avec JQuery-ajax toutes les 5 sec.

Est-ce que quelqu'un sait ce qui ne va pas ici? Ou est-ce une façon que je peux soumettre 2 JQuery-ajax et faire leur tâche en même temps?

Répondre

2

Le A dans Ajax signifie Asynchrone. Donc vraiment, presque par définition, vous devriez pouvoir avoir plusieurs demandes en cours simultanément. (LogicFlux)

Here's a blog après cela va dans une discussion sur ce sujet.

1

navigateurs ont un two http connections per server limitation, cela peut être changé dans firefox dans about: config, et par exemple dans le registre des fenêtres (pas sûr où)

Dans votre cas, peut-être le serveur db bloque la demande de lecture parce que il y a une transaction d'écriture qui verrouille la table.

0

J'ai eu le même problème, mais avec JavaScript. J'ai eu deux instances de async $ .ajax() exécuté une fois mais le premier avait sur "succès: window.location =" www.google.pl ";

Si la première instance terminée, il a essayé de rediriger vers un nouvel emplacement Mais la deuxième instance fonctionnait encore:

Questions connexes