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

    reload con Ajax, risultato diverso tra IE e FF

    Salve,
    ho alcune pagine scritte in php che permettono di effettuare dei preventivi on-line. L'utente si collega, sceglie le varie opzioni e tramite alcuni script in Ajax viene aggiornata la stessa pagina che gli permette di proseguire con la scelta di ulteriori opzioni e così via. Il problema è insito nel tipo di browser che si usa per il servizio. Con FF tutto bene, al reload della pagina il focus torna naturalmente sul form dell'utente ed il refresh è quasi impercettibile. Con IE invece il reload forzato con Ajax riporta tutta la pagina in cima ed il cliente è costretto a spostarsi verso il basso. Questo non accade se con IE scelgo di aggiornare i contenuti con il tasto "aggiorna" che, al contrario di ajax, riporta il focus della pagina nella posizione precedente all'operazione. Posto di seguito l'ultima parte del codice Ajax:

    codice:
    if(ajax.readyState === readyState.COMPLETATO){ 
    	  if(statusText[ajax.status] === "OK"){																			   	
          window.self.location.reload();                                         			
    	  }else{
    	     window.alert("Impossibile effettuare l'operazione richiesta");
    	  }
    }
    Si può ovviare a questo problema senza utilizzare ancore o altri trucchi?
    spero di essere stato chiaro
    Grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    non credo

  3. #3
    Ok, allora usando trucchi? e se si, quali conviene usare?

    Ho letto alcune discussioni su altri forum e sembra che il problema sia sugli header html e/o sulle sessioni di php, in particolare su session_start. Io non sono un esperto ma alle brutte metto sul sito un bella scritta "usare solo con browser FF", ma alla fine non sarei contento.......

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    ma perche' procedi ad un reload?
    il bello di ajax e' proprio non dover ricaricare tutto il documento,
    ovviamente ci possono essere casi in cui e' auspicabile farlo
    ma sei proprio certo sia questo il caso?

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    l' unico "trucco" e' passarsi (in maniera piu' semplice appeso all' indirizzo) il numero di pixel scrollati dall' inizio del documento
    riprenderlo e settare lo scroll nella nuova pagina

  6. #6
    uso window.location.reload perché gli utenti salvano i dati nelle sessioni php, dopodiché i select della pagina si aggiornano in base ai valori contenuti nell'array di sessione e l'utente prosegue nel suo percorso. Non conosco altro modo x farlo se non quello di aggiornare la pagina. Ho provato anche con le ancore e su FF tutto ok mentre IE 8 non ne vuole sapere.
    Proverò anche con il discorso pixel ma spero in una soluzione + pulita
    Merci

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    praticamente fai prima a non usare ajax

  8. #8
    scherzi, con FF è un bellezza. Pulizia del codice lato programmatore, interfaccia comoda lato utente........ormai ho fatto l'errore di scrivere le pagine e provarle solo con FF, sbaglio mio, ma non torno indietro. Pace, vada per la scritta "usare solo FF".........

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    punti di vista l' applicazione e' tua
    ciao

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 © 2024 vBulletin Solutions, Inc. All rights reserved.