Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183

    disattivare submit se campo x è vuoto

    sto cercando di disattivare il pulsante finchè un campo è vuoto.
    sto usando questo codice:

    codice:
    <form method="post" action="miapagina.php" name="frm">
    ...
    <input type="text" name="titolo" maxlength="30"  onload="if(this.value==""){document.forms['frm'].elements[submit].disabled='true';}"  onblur="if(this.value!=""){document.forms['frm'].elements[submit].disabled='false';}" />
    ...
    <button type="submit" name="submit">Prosegui</button>
    dove sbaglio?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    applichi l'evento onload ad un textbox?

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    ok ho fatto così:
    ho messo disabled="disabled" sul submit, poi ho messo sul campo da controllare un onblur che se è stato scritto qualcosa abilita il submit.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    codice:
    <form method="post" action="miapagina.php" name="frm">
    <input type="text" name="titolo" maxlength="30"  onkeyup=" if(this.value==''){document.forms['frm'].elements['submit'].disabled=true;}else{document.forms['frm'].elements['submit'].disabled=false;}" />
    <button type="submit" name="submit">Prosegui</button>
    e lasci il disabled sul submit

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    come posso ora evitare che si debba fare click da qualche parte prima di prosegui? (per attivare l'evento onblur)

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    la soluzione te l'ho gia data...vedi mio ultimo post!

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    si mentre stavo scrivendo mentre l'hai inviata... semplice e pulita: perfetto!

    un'altra cosa:
    in una pagina ho due pulsanti:
    |PULSANTE 1|

    |PULSANTE 2|

    il pulsante uno è disabilitato, si abilita dopo che l'utente ha fatto alcune cose e si disabilita nuovamente dopo alcuni eventi.

    il pulsante due ora è sempre abilitato... io vorrei che fosse disabilitato di default e che si abilitasse x secondi dopo che il pulsante 1 si è disabilitato.

    Ora poichè lo stato del pulsante uno è gestito da eventi in flash (ho usato script trovati su internet, non ne so assolutamente nulla di flash) vorrei poter agire sul secondo pulsante senza dover andare a cercare e modificare il codice che gestisce il primo pulsante.

    si può fare o ci devo rinunciare?

    faccio una piccola timeline:

    P1_disabilitato_abilitato_disabilitato
    P2_disabilitato____________abilitato(x secondi dopo che il primo è tornato disabilitato).

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    quando il primo pulsante viene disabilitato, cioè nell'onkey up abiliti il pulsante 2 e fai partire un timer (vedi funzione setTimeout) a cui ci associ il metodo che disabilita il bottone 2.

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    non devo fare che rimane attivo per n secondi ma che si attivi dopo n secondi... comunque non ho capito come dovrei usare l'onkeyup...

  10. #10
    Utente di HTML.it L'avatar di luky0
    Registrato dal
    Jan 2008
    Messaggi
    53
    fai come ha detto Vindav...
    codice:
    setTimeout('abilitabottone()',n);
    abilitabottone() è una istruzione generica che può andare dal codice scritto da te sulla stessa riga alla chiamata di una funzione dove c'è l'abilitazione del pulsante

    e n è il tempo in millisecondi che deve passare per attivarsi

    ricordati però di mettere clearTimeout() nella funzione o te la ripeterà ogni n millisecondi (o almeno io ce lo metto sempre per diversi problemi che mi escono se metto assieme setTimeout e setInterval e non sò se conviene fare così oppure no...)

    per quanto riguarda l'onkeyup lo devi usare se ti serve se devi modificare qualcosa all'interno del form in modo scritto, invece se devi clickare sul borrone per disabilitarlo e quindi abilitare il secondo allora usa onclick oppure se servono altri eventi vai QUI e prosegui a leggere fino alla lezione n° 19... sono tutti eventi che si possono utilizzare

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.