J'utilise jQuery pour essayer de récupérer plusieurs éléments de données en même temps. Le contexte de l'exigence est que différents bits de données prennent différentes durées pour devenir disponibles, donc je veux afficher chaque pièce comme elle est retournée.jQuery: Faire des requêtes ajax simultanées, est-ce possible?
Le problème est que les demandes semblent 'mettre en file d'attente'; la prochaine requête ne va pas jusqu'à ce que la précédente soit revenue. Après une longue lecture, il semble que l'option 'async: false' pourrait être ce que je cherche, mais cela ne semble pas faire de différence.
À partir du débogage TCP/IP, je peux voir le navigateur ne pas initier plus d'une connexion; il utilise la même connexion lorsque la demande précédente est retournée.
J'ai vu de nombreux sites dans mon temps qui chargent des données sur ajax simultanément, donc évidemment c'est possible, mais je m'arrache les cheveux en essayant de faire fonctionner ça.
Voici mon code:
$.ajax({
type: "GET",
async: false,
url: "foo1.php"
});
$.ajax({
type: "GET",
async: false,
url: "foo2.php"
});
$.ajax({
type: "GET",
async: false,
url: "foo3.php"
});
Pourquoi n'avez-vous pas consulté la documentation? Vous devriez avoir recherché la signification de chaque option que vous utilisez. 'async: false' est l'opposé de ce que vous décrivez. –