Domanda

Sto sviluppando un'app Rails. (Non penso che questo sia un problema specifico delle rotaie) C'è un processo di prenotazione che consiste in 3 passaggi. Quando un utente si trova nella pagina del passaggio 2, se l'utente fa clic sul pulsante "Precedente", i dati del modulo nel passaggio 1 dovrebbero essere gli stessi di prima.

Ho allegato " history.go (-1); " al pulsante "Precedente".

Funziona sul mio browser Firefox. Ma non funziona su alcuni browser IE. Il mio IE funziona però.

Come posso forzarlo a conservare i dati del modulo quando la pagina è tornata?

Grazie.

Sam

È stato utile?

Soluzione

Non è possibile fare affidamento sul client (javascript) per questo tipo di operazione.

I dati vengono salvati da qualche parte al passaggio 1, quindi ripristinarli.

Altri suggerimenti

cerca di avere un iframe nascosto nella pagina per archiviare i dati. Non sono sicuro dei dettagli dell'implementazione, ma questa è la tecnica che le persone usano per memorizzare lo stato della pagina quando l'hash cambia nell'URL. Controlla se alcune librerie come dojo e jquery aiutano a supportare questa situazione.

È possibile salvare i dati della pagina 2 nel database, o una cache della memoria del server, o un cookie o tre, e ripristinarli quando la pagina viene caricata.

ASP.NET lo fa automaticamente tramite ViewState (nota: l'articolo è antico, ma ancora abbastanza preciso). Forse puoi adattare un approccio simile a Rails.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top