Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Cancellare dati in input

    Vorrei sapere se c'e' possibilità di cancellare il contenuto dei campi input type
    appena dopo aver inoltrato la richiesta.

    Mi spiego meglio:
    in una pagina asp ho un form dove riempo delle input con i dati che poi processo andando a richiamare con post la nuova pagina send.asp
    Tutto funziona alla perfezione ma quando dalla pagina send.asp torno indietro con il back del browser mi trovo di nuovo i campi riempiti e quindi posso inoltrare di nuovo.
    C'e' una possibilità per cancellare i campi dopo che la richiesta è stata inoltrata correttamente?

    Anticipatamente ringrazio.

    Vale

  2. #2
    Innanzitutto fai un controllo per verificare che ci sia un dato univoco, come il codice fiscale o l'indirizzo email, in modo che un inserimento doppio venga bloccato... se hai questi dati univoci ovviamente nel tuo form!

    Poi puoi usare un cookie o una session per impostare un minimo di tempo in cui lo stesso utente non piò inoltrare due volte la richiesta.

    Fatto ciò devi giocare con la cache.

    Con Javascript (client-side) puoi impostare un controllo del genere:

    function svuotacampi()
    {
    document.modulo.campo1.value="";
    document.modulo.campo2.value="";
    }
    svuotacampi();

    Prova se funziona anche col tasto indietro del browser.

    Fammi sapere.

  3. #3
    posso farlo anche in asp o devo farlo per forsa in javascript?

    Ti chiedo questo perchè venendo da vb ho molta più dimestichezza con il codice asp.

    Vale

  4. #4
    La cosa è risolvibile lato client. Latoserver puoi solo impostare i valori della cache cosi:

    <%
    Response.Buffer = True
    Response.Expires = 0
    %>

    e magari è sufficiente. Prova!

    Traduco lo script da JS a VB:

    <script type="text/vbscript">
    Function svuotacampi()
    document.modulo.campo1.value=""
    document.modulo.campo2.value=""
    End Function
    Call svuotacampi()
    </script>

  5. #5
    Nella pagina con la form, in testa:
    codice:
    <%
    Response.CacheControl = "no-cache"
    Response.AddHeader "pragma", "no-cache"
    Response.Expires = 0
    %>

  6. #6
    Grazie a tutti per le vs risposte.
    ho adottatto il codice proposto da Mems e funziona pefrettamente.

    Scusate se approfitto.
    Volendo temporizzare la pagina di conferma, cioè la pagina asp che salta fuori dopo che l'utente ha riempito regolarmente tutti gli input text cosa devo aggiungere?

    In poche parole vorrei temporizzare il redirect alla pagina che ho inserito in fondo alla rouitine.

    Grazie

  7. #7
    Metti il meta refresh. E' HTML.

  8. #8
    Non posso mettere il refresh nel html perchè la pagina che viene visualizzata è la stessa anche per il controllo errore.

    Mi spiego meglio.

    Dalla prima pagina asp dove è contenuto il form passo alla pagina di errore se i campi non sono riempiti correttamente, ma la pagina di errore è la stessa di quella di conferma.
    Il tutto viene controllato da condizioni, quindi se metto il refresh nel corpo di questa pagina verrebbero temporizzati anche gli errori.

    Grazie di nuovo.

  9. #9
    Ho trovato la soluzione e spero possa servire ad altri.
    codice:
    Response.AddHeader "Refresh", "5;URL=send.asp"

  10. #10
    Originariamente inviato da Valerossi
    Non posso mettere il refresh nel html perchè la pagina che viene visualizzata è la stessa anche per il controllo errore.

    Mi spiego meglio.

    Dalla prima pagina asp dove è contenuto il form passo alla pagina di errore se i campi non sono riempiti correttamente, ma la pagina di errore è la stessa di quella di conferma.
    Il tutto viene controllato da condizioni, quindi se metto il refresh nel corpo di questa pagina verrebbero temporizzati anche gli errori.

    Grazie di nuovo.
    Beh, potevi mettere una if nell'head:
    codice:
    <html>
      <head><title></title>
      <% if condizione then %>
       <meta ... />
      <% end if %>
      </head>
      ...

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