Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    cambiare il tipo del campo password dinamicamente

    Salve, io volevo fare una variazione al mio form. Ho un campo password e verifica password e all'interno però nel caso di errore a inserire la password (caratteri non consentiti) o nel caso in cui la password non venga inserita, ma ovviamente viene scritto in asterischi anche il messaggio. Ho provato a cambiare il tipo mettendo text all'interno della funzione js e a rimettere password alla fine prima di restituire il controllo al form ma mi rimane text.. Allego la funzione magari sbaglio qualche cavolata...

    codice:
    function valPass(password) {
     var pass = password.value;
     document.getElementById('password').type = "text";
     if (pass && (pass.length < 5) && !pass.match(/^([0-9a-z]{5,12})$/)) {
       document.getElementById('password').value = "Password non corretta";
       document.getElementById('verifica_password').type = "password";
     }
    else if (pass == '') {
       document.getElementById('password').value = "Campo obbligatorio";
       document.getElementById('verifica_password').type = "password";
     }
    }
    Grazie,

    Francesco

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    vuoi far comparire l'errore all'interno del campo password? non mi sembra una scelta saggia, quando vuoi che ritorni a type password non l'ho mica capito...al focus?

  3. #3
    perchè no? sì volevo mostrare il messaggio di errore lì dnetro così l'utente ha visibilità dell'errore diretta e anche un pò per questioni di spazio. Sì volevo che poi lui dopo aver visto l'errore clicca il messaggio scompare e torna in modalità password.
    (la stessa cosa ho provato a farla con i colori del testo per scrivere il messaggio in rosso ma allo stesso modo poi mi rimane rosso..non riesco a toglierlo)

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    perche ti complichi la vita per una finezza, poi sinceramente non ho mai visto in nessun sito una cosa del genere, puoi metterla a destra, sotto, sopra, se non hai spazio in un alert o anche in una modal box. Cmq al focus controlli che il type sia uguale a text, se lo è lo reimposti a password e lo svuoti, dovrebbe bastare questo.

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    no, non puoi cambiare il type al volo, sicuramente non in maniera consistente trai vari browser

    se proprio vuoi, devi nascondere/mostrare un campo di testo al posto di quello password

  6. #6
    uff..ora ho fatto così per gli altri campi.. se invece visualizzo la password a text?pessimo?

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Esempio:
    codice:
    <script>
    function valPass(cpass) {
     cpass.style.backgroundImage="";
     var pass = cpass.value;
     if (pass == '') {
       cpass.value="";
       cpass.style.backgroundImage="url(caob.gif)";
     }
     else if (!pass.match(/^([0-9a-z]{5,12})$/)) {
       cpass.value="";
       cpass.style.backgroundImage="url(panoco.gif)";
     }
    }
    </script>
    
    <input type="password" style="width:193px;" onblur="valPass(this)" onfocus="this.style.backgroundImage=''">
    dove caob.gif e panoco.gif sono due immagini di dimensioni opportune con la scritta che deve apparire nei due casi.

    Nota che ho cambiato i controlli e l'ordine con il quale eseguirli...

    Puoi vederlo in azione qui
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  8. #8
    Bella idea
    E per cambiare il colore dei messaggi? Perchè negli altri campi non ho avuto problemi ma volevo far apparire il messaggio di errore in rosso.. Se no non fa niente..lo lascio così.

    Grazie,

    Francesco

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    i messaggi sono delle immagini, crea un immagine che abbia le scritte in rosso.

  10. #10
    no preferirei evitare...poi se lo faccio per tutti i campi si appesantisce troppo.. va bene anche così.
    Grazie mille

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.