Visualizzazione dei risultati da 1 a 7 su 7

Discussione: invio form

  1. #1

    invio form

    Salve a tutti.

    Ho questo prob:

    Se dopo aver compilato un form con dati, clicco più volte sul tasto invia dati, nel db ritrovo n record uguali per quante volte ho cliccato invio.

    Come posso inibire il tasto invio dopo il primo click.

    Grazie.

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    prova cosi`:
    <form ... onsubmit="this.SENDB.disabled=true;">
    ...
    <input name="SENDB" type="submit" value="...">
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    onsubmit lo uso già per fare il controllo del form.

    Posso mettere un onclick direttamente sul tasto?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    On click sul tasto non credo che possa andare: infatti lo script viene eseguito prima di eseguire il comando del tasto (e non viene fatto se ritorna false).

    Ma non vedo problemi a fare due operazioni in un onsubmit:

    <form ... onsubmit="if(controllaform(this)) {this.SENDB.disabled=true;return true;} else return false;">

    dove controlalform(this) e` la funzione che fai attualmente.


    Oppure puoi mettere la disabilitazione del tasto nella funzione controllaform(), in caso di esito valido.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    grazie dell'aiuto.

    Non sono riuscito ad adottare la tua soluzione (dovuta alle mie scarse conoscenze di scripting).

    Ho spostato il controllo del form sull'onclick del tast submit e ho messo la disabilitazione del tasto nell'onsubmit del form.

    Funzia.

    Grazie ancora

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ho spostato il controllo del form sull'onclick del tast submit
    Non e` una bella cosa. E` contrario alle norme dell'accessibilta` ed ha un effetto collaterale: se tu dai l'avvio del form tramite tastiera (ad esempio con il tasto return), il controllo non viene eseguito.

    Se posti il codice che usavi per il controllo, lo possiamo modificare in modo da farlo funzionare assieme alla disabilitazine del submit.
    Non e` una cosa semplicissima, per cui non mi meraviglia che non ci sia riuscito.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Grazie Mich_,

    ho letto solo ora la tua risposta.

    Oggi pomeriggio posto il codice.

    Grazie ancora

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.