Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Ajax Invio richieste simultanee.

    Salve,
    sono nuovo di questo forum e... ad essere sincero dei forum in generale.

    sto' realizzando un'applicazione web sfruttando la tecnologia Ajax/JavaScript mi sono
    trovato di fronte ad un problema, spero qualcuno possa aiutarmi.

    Utilizzo XMLHttpRequest per caricare una pagina all'interno di un tag <DIV></DIV>.

    Il tutto funziona correttamente ma il problema sorge quando durante il caricamento di
    una pagina richiamo nuovamente la funzione per caricarne una nuova.

    Il risultato è questo, la nuova pagina si apre senza problemi, mentre la pagina caricata
    in precedenza viene caricata dal server ma non viene visualizzata.

    E' possibile che sfruttando la solita funzione che prende per parametro solamente la pagina
    da caricare e il div contenitore nel momento in cui lo script controlla l'avvenuto caricamento:

    this.x = new XMLHttpRequest();
    x.readyState == 4 && (x.status == 200))
    cx.innerHTML = x.responseText;

    la prima delle due pagine che raggiunge lo strato interrompe il caricamento dell'altra?

    Spero di essere stato chiaro e che qualcuno possa aiutarmi.

  2. #2
    Non è un buon approccio fare due richieste simultanee, aspetta sempre che l'altra sia finita; ci potrebbero essere dei problemi lato server.

    Anzi, la cosa migliore sarebbe racchiudere tutto in una sola pagina da includere ( se possibile ) e dividere in due il responseText mediante regexp.

  3. #3
    ...non è che siano proprio simultanew, in pratica volglio rendo possibile la comune navigazione mentre per esempio una form di ricerca stà caricando la lista dei risultati.

  4. #4
    Allora potresti usare il metodo abort ( di XMLHttpRequest ) ogni qual volta si clicca su una voce mentre si sta aggiornando la lista in modo da fermare quest'ultima.

  5. #5
    così non risolvo il problema... in pratica quello che voglio, è che lista si carichi in background.

    Sembra assurdo ma so' che è possibile perchè già lo faccio da un'altra parte ma per farlo
    mi creo due funzioni diverse che instanziano diversi XMLHttpRequest.

    Il fatto è che essendo un'applicazione molto vasta non vorrei dovermi creare funzioni uguali per ogni funzionalità.... alla faccia dll'Object Oriented :-)

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Il problema potrebbe essere l'uso di variabili globali al posto di quelle private.
    :master: Perchè non provi ad usare prototype per vedere se dà lo stesso problema? :master:
    Pietro

  7. #7
    Grazie Pietro,

    ho risolto inserendo all'interno della classe che gestiva il caricamento degli URL all'interno dei DIV tutte variabili private.

    il fatto è che abituato al Java pensavo bastasse instanziare oggetti con new Oggetto() e dichiarare le variabili come nomeOgetto.nomeVariabile per far riferimento ad un oggetto specifico,
    in realta "correggimi se sbaglio", per evitare problemi si devono dichiarare le variabii come private mettendo per esempio var nomeVariabile nel costruttore?

  8. #8
    non ho capito la vostra soluzione,
    ma non è corretto fare come proposto da questo sito? Handling Multiple XMLHTTPRequest Objects ?
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  9. #9
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Jarno
    non ho capito la vostra soluzione,
    ma non è corretto fare come proposto da questo sito? Handling Multiple XMLHTTPRequest Objects ?
    è difficile capire perchè come al solito non si manda del codice su cui discutere . Comunque, leggendo qua e là, un errore abbastanza comune è quello di utilizzare variabili globali dove invece andrebbero le locali. E, visto che ha risolto in questo modo, doveva essere quello il problema .

    Per il link consigliato... boh! senza scomodare gli americani, peraltro molto bravi a reinventare l'acqua calda, ce ne sono tantissimi in italiano, anche in html.it, e magari fatti pure da qualche nostro amico del forum.
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.