Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    37

    Validazione form.... aaargh!

    Ok!! Stiamo sempre con i form da validare:
    allora sto facendo una pagina che mandi un email, faccio il controllo sui vari campi, fra cui anche il campo oggetto. su quest'ultimo però volevo fare in modo che mi uscisse fuori la confirm e quindi decidere se mandarla con o senza l' oggetto. A tal scopo ho scritto così:

    if (modulo.elements["Oggetto"].value == "" || modulo.elements["Oggetto"].value.length < 2){
    if(Confirm("Il messaggio non ha Oggetto.Inviarlo lo stesso?")){
    return True;
    }
    else{
    modulo.elements["Oggetto"].focus();
    return false;
    }
    }


    Non mi dà nessun errore ma mi salta il controllo, non lo prende prorpio in considerazione.
    secondo voi?
    aaaaaaacccciià

  2. #2
    ricordandoti che JS è case-sensitive...ecco il tuo problema risolto....


    <html>
    <head>
    <title></title>
    <script language="javascript">
    function controllo(){
    if((modulo.elements["Oggetto"].value == "")||(modulo.elements["Oggetto"].value.length < 2)){
    if(confirm("Il messaggio non ha Oggetto.Inviarlo lo stesso?")){
    return true;
    }
    else{
    modulo.elements["Oggetto"].focus();
    return false;
    }
    }
    }
    </script>
    </head>
    <body>
    <form name="modulo" onSubmit="return controllo()">
    <input type="text" name="Oggetto">
    <input type="submit" value="Invia">
    </form>
    </body>
    </html>
    Let's your dream came true!

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    37
    Ciao Ale500,
    ho copiato e incollato il codice che mi hai postato, (ovviamente integrato nella funzione mia, ma continua a comportarsi tale e quale a prima. Ho controllato anche se l'avevo scrtto giusto(ogni tanto sfugge il fatto del case-sensitive )

    Di seguito la funzione:

    function seleziona_tutti(ss){
    modulo=ss
    if (modulo.elements["Nome"].value == "" || modulo.elements["Nome"].value.length < 2){
    alert("Non hai inserito il tuo Nome.");
    modulo.elements["Nome"].focus();
    return false;
    }
    if (modulo.elements["Cognome"].value == "" || modulo.elements["Cognome"].value.length < 2){
    alert("Non hai inserito il Cognome.");
    modulo.elements["Cognome"].focus();
    return false;
    }
    if((modulo.elements["Oggetto"].value == "")||(modulo.elements["Oggetto"].value.length < 2)){
    if(confirm("Il messaggio non ha Oggetto.Inviarlo lo stesso?")){
    return True;
    }
    else{
    modulo.elements["Oggetto"].focus();
    return false;
    }
    }
    }
    return true;
    }

    grazie

    aaaaaaacccciià

  4. #4
    naturalmente nel tuo form hai messo così, vero:

    onSubmit="return seleziona_tutti()"
    Let's your dream came true!

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    37
    Si!!
    aaaaaaacccciià

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    37
    Anzi No (mannaggia la fretta!!!!!)
    Ho messo così:
    onSubmit="return seleziona_tutti(this);"
    tieni presente che gli altri controlli li fà tutti ......
    aaaaaaacccciià

  7. #7
    true con la minuscola....:quote: :quote: :quote:
    Let's your dream came true!

  8. #8
    Originariamente inviato da pruppito
    Ciao Ale500,
    ho copiato e incollato il codice che mi hai postato, (ovviamente integrato nella funzione mia, ma continua a comportarsi tale e quale a prima. Ho controllato anche se l'avevo scrtto giusto(ogni tanto sfugge il fatto del case-sensitive )

    Di seguito la funzione:

    function seleziona_tutti(ss){
    modulo=ss
    if (modulo.elements["Nome"].value == "" || modulo.elements["Nome"].value.length < 2){
    alert("Non hai inserito il tuo Nome.");
    modulo.elements["Nome"].focus();
    return false;
    }
    if (modulo.elements["Cognome"].value == "" || modulo.elements["Cognome"].value.length < 2){
    alert("Non hai inserito il Cognome.");
    modulo.elements["Cognome"].focus();
    return false;
    }
    if((modulo.elements["Oggetto"].value == "")||(modulo.elements["Oggetto"].value.length < 2)){
    if(confirm("Il messaggio non ha Oggetto.Inviarlo lo stesso?")){
    return True;
    }
    else{
    modulo.elements["Oggetto"].focus();
    return false;
    }
    }
    }
    return true;
    }

    grazie

    Let's your dream came true!

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    37
    Ride bene chi ride ultimo.......
    Corretto Il True (con la minuscola)
    ma non funzia ancora!!!!!
    aaaaaaacccciià

  10. #10
    prova così:

    Codice PHP:
    function seleziona_tutti(ss){ 
       
    modulo=ss
       
    return true
       if(
    modulo.elements["Nome"].value == "" || modulo.elements["Nome"].value.length 2){ 
          
    alert("Non hai inserito il tuo Nome."); 
          
    modulo.elements["Nome"].focus(); 
          return 
    false
       }
     
       if (
    modulo.elements["Cognome"].value == "" || modulo.elements["Cognome"].value.length 2){ 
         
    alert("Non hai inserito il Cognome."); 
         
    modulo.elements["Cognome"].focus();  
         return 
    false
       }
     
       if((
    modulo.elements["Oggetto"].value == "")||(modulo.elements["Oggetto"].value.length 2)){ 
          if(
    confirm("Il messaggio non ha Oggetto.Inviarlo lo stesso?")){ 
             return 
    true
          } 
          else{ 
             
    modulo.elements["Oggetto"].focus(); 
             return 
    false
          } 
       } 


    PS
    negli script utilizza la tecnica dell'indentatura....trovare gli errori ti rimarrà + comodo
    Let's your dream came true!

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.