2012-12-21 17 views
6

Come aggiornare e ricaricare la pagina senza inviare nuovamente i dati POST?Aggiorna una pagina, senza inviare nuovamente i dati POST (ASP.NET)

Ho provato location.reload() che funziona perfettamente su Chrome (che era l'ambiente di testing durante lo sviluppo). Ma IE e Firefox sono entrati in un loop infinito in JS - ripubblicando un sacco di dati spazzatura/duplicati.

Nota: Tuttavia, voglio solo aggiornare la pagina per cancellare tutti i contenuti del modulo. Sto anche registrando uno script di avvio dopo Submit, che mostrerà il messaggio di avviso che i dati sono stati aggiunti con successo.

AIUTO!

+0

Stai postando la pagina normalmente o tramite JavaScript/AJAX? –

risposta

6
location.href = location.href + '?' + Math.random(); 

Questo dovrebbe funzionare.

+0

+1, ma è anche necessario verificare se il '?' tutto pronto esiste su href. – Aristos

13

Prova questo:

window.location.href = window.location.href; 
+1

Grazie. Questo mi ha aiutato molto. – ShaileshDev

4

Nel codice aggiuntivo:

Response.Redirect(Request.RawUrl) 
2

Se si vuole solo cancellare la forma, perché non:

<input type="reset" value="Clear Fields"> 

Si potrebbe anche farlo utilizzando:

document.getElementById('<%=form1.ClientID%>').reset(); 

Sembra uno spreco per ricaricare la pagina a meno che non sia necessario fare qualcos'altro.

+0

@Aristos - Grazie e buon punto, ho aggiornato il mio post. – webnoob

1

Aggiungere il seguente:

Server.Transfer(Request.RawUrl);

1

Di seguito risolverà il vostro problema:

Server.Transfer(Request.RawUrl); 
0

uso location.reload(true). Questo "duro" ricarica la pagina ..

0

Ho provato a ricaricare anche e ricaricare (vero) entrambi non esattamente facendo ciò che volevo.

ho visto che Località Object hanno altro metodo (di ricarica) dato che volevo per richiedere la pagina di "ottenere" Ho appena fatto:

location.assign(window.location); 

Finora sembrano fare quello che voglio, ricarica la stessa pagina senza inviare nuovamente valori. Il mio caso d'uso è una chiamata ajax al server quando la sessione è scaduta. Visualizzo un messaggio di errore che dice che la sessione è andata persa, quindi voglio ricaricare la pagina.

Problemi correlati