Ho sviluppato alcuni siti Web e inciampo sempre nello stesso punto: più chiamate ajax. Ho una pagina principale in cui tutto il contenuto viene caricato in modo asincrono. Quando la pagina è caricata, ci sono quattro chiamate INDEPENDENT che "disegnano" la pagina per aree (in alto, a sinistra, a destra e in basso) e mentre è caricata mostro all'utente i tipici giri di ajax. Quindi, quando una richiesta viene ricevuta dal browser, eseguo il callback e le diverse aree vengono disegnate in momenti diversi. Il fatto è che la risposta per il server a volte è confusa, voglio dire, la risposta di top è disegnata a sinistra o viceversa.Chiamate ajax multiple allo stesso tempo
Ho provato alcune soluzioni come la creazione di un timestamp in ogni richiesta per indicare al browser e al server che ogni richiesta è diversa.
Inoltre, ho provato a configurare alcuni parametri della cache nel server, nel caso.
L'unico modo in cui funziona è stato incluso il request2 nel callback di colui, ecc
qualcuno conosce il modo corretto di farlo o mai ha battuto questo problema ?? Non voglio fare richiesta concatenata.
Grazie
Ecco un esempio di ciò che intendo:
$(document).ready(function() {
$.get('/activity',Common.genSafeId(),function(data){$('#stream').html(data);$("#load_activity").addClass("empty");});
$.get('/messages',Common.genSafeId(),function(data){$('#message').html(data);$("#load_messages").addClass("empty");});
$.get('/deals',Common.genSafeId(),function(data){$('#new_deals_container').html(data);$("#load_deal").addClass("empty");});
$.get('/tasks',Common.genSafeId(),function(data){$('#task_frames').html(data);$("#load_task").addClass("empty");});});
E l'HTML è un semplice jsp con quattro contenitori ognuno con un differente id.
Cosa vuoi dire, la risposta è disegnata nel posto sbagliato? Costruito correttamente, la chiamata Ajax aggiornerà una parte molto specifica dell'HTML che si trova in una posizione molto specifica nel layout. Pubblica un semplice codice che mostri il problema. –
Stai aggiungendo il contenuto alla tua pagina con qualcosa come $ ('# contenitore'). Append()? – jimw
Sì, ho aggiornato il post. Il contenuto viene aggiunto al DOM, ma a volte la richiesta disegna il contenuto in un id inappropriato. So che è strano, per questo motivo di solito faccio la richiesta della catena. Grazie per entrambe le risposte. –