Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: validazione form

  1. #1

    validazione form

    Salve a tutti ho un form che è validato con il seguente script per i campi nome, email e telefono:

    codice:
    function Controllo(){ 
          if(document.form1.nome.value==""){ 
             alert("Attenzione!! Non hai inserito nome e cognome!"); 
             return false; 
          } 
          if(document.form1.email.value==""){ 
             alert("Attenzione!! Non hai inserito l'email!"); 
             return false; 
          } 
         if(document.form1.telefono.value==""){ 
             alert("Attenzione!! Non hai inserito il telefono!"); 
             return false; 
          }  
       }
    Vorrei aggiungere anche il controllo per verificare se l'email è un'email valida ed il numero di telefono verificare che non contenga dei caratteri "illegali".
    E' possibile implementare lo script sopra riportato??
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74
    Ciao,
    premetto che non sono esperta, sono alle prime armi ma questa cosa l'ho implementeta.
    Ti faccio vedere come ho fatto io:


    var re2 = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;

    if ( !document.form1.email.value.match(re2) )
    {
    alert("Il campo email contiene errori")
    document.form1.email.focus();
    return false;
    }

    // Controllo validità telefono
    str = document.form1.telefono.value;
    if (str.length == 0)
    {
    alert("Il telefono deve contenere almeno un carattere");
    document.form1.telefono.focus();
    return;
    }

  3. #3
    Non funziona o meglio ho aggiunto lo script che mi hai dato tu alla fine del mio e
    praticamente il form viene spedito anche se non compilo nessun campo........................

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74
    Prova così, assegnando document.form1.nome.value ad una variabile:

    function Controllo(){

    var str = document.form1.nome.value;

    if(str.lenght==0){
    alert("Attenzione!! Non hai inserito nome e cognome!");
    document.formdati.nome.focus();
    return;
    }
    .................

  5. #5
    Ho modificato lo script che ora è il seguente:

    codice:
    function Controllo(){ 
    
    var str = document.form1.nome.value;
    
    if(str.lenght==0){ 
    alert("Attenzione!! Non hai inserito nome e cognome!"); 
    document.formdati.nome.focus(); 
    return; 
    } 
    
    var re2 = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/; 
    
    if ( !document.form1.email.value.match(re2) )
    {
    alert("Il campo email contiene errori")
    document.form1.email.focus(); 
    return false;
    }
    
    // Controllo validità telefono
    str = document.form1.telefono.value;
    if (str.length == 0)
    {
    alert("Il telefono deve contenere almeno un carattere");
    document.form1.telefono.focus(); 
    return;
    }
       }
    Scusami ma io sono ancora meno esperto di te.
    Ora qualche cosa è migliorato nel senso che se cerco di inviare il form senza compilare nulla mi dice che il campo email non è valido.
    Se inserisco un indirizzo email valido mi compare subito il messaggio che il telefono deve contenere almeno un carattere e poi mi spedisce subito il form.
    Praticamente non mi controlla il nome e quando mi avvisa che serve almeno un carattere nel telefono non mi lascia modificare nulla e invia subito il form.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74
    si bravo, esegue un alert alla volta in ordine, e quindi possiamo capire che non controlla il nome e cognome.

    GUARDA BENE IL CODICE, c'è stato un errore mio, ti ho scritto formdati invece che form1. scusa,modificalo e riprova!

  7. #7
    Ho modificato formdati in form1 ma non mi controlla il nome e cognome mentre tutto il resto viene controllato.

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74
    prova a togliere var

  9. #9
    Ora il codice è così e mi controlla tutto tranne nome e cognome:

    codice:
    function Controllo(){ 
    
    str = document.form1.nome.value;
    
    if(str.lenght==0){ 
    alert("Attenzione!! Non hai inserito nome e cognome!"); 
    document.form1.nome.focus(); 
    return false; 
    } 
    
    var re2 = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/; 
    
    if ( !document.form1.email.value.match(re2) )
    {
    alert("Il campo email contiene errori")
    document.form1.email.focus(); 
    return false;
    }
    
    // Controllo validità telefono
    str = document.form1.telefono.value;
    if (str.length == 0)
    {
    alert("Il telefono deve contenere almeno un carattere");
    document.form1.telefono.focus(); 
    return false;
    }
       }

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74
    io il return false non l'ho messo per il nome e per il telefono ma ho messo solo il return.
    Return false l'ho messo solo alla mail.
    per tutto il resto è completamente identico e a me funziona! mah

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