aiuto per validare form

chiabgigi

Nuovo Utente
6 Set 2008
22
0
0
ciao, sono nuovo del forum e spero di esprimermi bene
sto costruendo un sito e all'interno di questo c'è la pagina 'Contattaci'
in questa pagina c'è un form da compilare da parte dell'utente.

In questo form, solo per testarlo, ho indicato allo script solo alcuni campi.
Allora il problema è che quando testo in locale (dreamweaver8) il form, anche lasciando in bianco tutti i campi, non mi restituisce l'errore.

posto il codice javascript:
Codice:
// JavaScript Document
     //<script language="JavaScript">
	 <!--
      function controllo() {
        var Nome = document.modulo.strNome.value;
		var Cognome = document.modulo.strCognome.value;
		var DataNascita = document.modulo.strDataNascita.value;
		var ComuneNascita = document.modulo.strComuneNascita.value;
		var ProvinciaNascita = document.modulo.strProvinciaNascita.options[document.modulo.strProvinciaNascita.selectedIndex].value;
		var Nazionalita = document.modulo.strNazionalita.value;
		var StatoCivile = document.modulo.strStatoCivile.options[document.modulo.strStatoCivile.selectedIndex].value;
		var ResidVia = document.modulo.strResidVia.value;
		var ResidCitta = document.modulo.strRedisCitta.value;
		var ResidProvincia = document.modulo.strResidProvincia.options[document.modulo.strResidProvincia.selectedIndex].value;
		var ResidNazione = document.modulo.strResidNazione.options[document.modulo.strResidNazione.selectedIndex].value;
        var Tel = document.modulo.strTel.value;
		var Email = document.modulo.strMail.value;
		var Patente = document.modulo.strPatente.value;
		var CategorieProtette = document.modulo.strCategorieProtette.options[document.modulo.strCategorieProtette.selectedIndex].value;
		var LivelloStudi = document.modulo.strLivelloStudi.options[document.modulo.strLivelloStudi.selectedIndex].value;
		var Email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
 
        //Effettua il controllo sul campo NOME
        if ((Nome == "") || (Nome == "undefined")) {
           alert("Il campo Nome è obbligatorio.");
           document.modulo.strNome.focus();
           return false;
        }
        //Effettua il controllo sul campo COGNOME
        else if ((Cognome == "") || (Cognome == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strCognome.focus();
           return false;
        }
        //Effettua il controllo sul campo DATA DI NASCITA
		else if (document.modulo.strDataNascita.value.substring(2,3) != "/" ||
            document.modulo.strDataNascita.value.substring(5,6) != "/" ||
            isNaN(document.modulo.strDataNascita.value.substring(0,2)) ||
            isNaN(document.modulo.strDataNascita.value.substring(3,5)) ||
            isNaN(document.modulo.strDataNascita.value.substring(6,10))) {
            alert("Inserire data di nascita in formato gg/mm/aaaa");
            document.modulo.strDataNascita.value = "";
            document.modulo.strDataNascita.focus();
            return false;
            } else if (document.modulo.strDataNascita.value.substring(0,2) > 31) {
            alert("Impossibile utilizzare un valore superiore a 31 per i giorni");
            document.modulo.strDataNascita.select();
            return false;
            } else if (document.modulo.strDataNascita.value.substring(3,5) > 12) {
            alert("Impossibile utilizzare un valore superiore a 12 per i mesi");
            document.modulo.strDataNascita.value = "";
            document.modulo.strDataNascita.focus();
            return false;
            } else if (document.modulo.strDataNascita.value.substring(6,10) < 1900) {
            alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno");
            document.modulo.strDataNascita.value = "";
            document.modulo.strDataNascita.focus();
            return false;
            }
        //Effettua il controllo sul campo COMUNE DI NASCITA
        else if ((ComuneNascita == "") || (ComuneNascita == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strComuneNascita.focus();
           return false;
        }
        //Effettua il controllo sul campo PROVINCIA DI NASCITA
        else if ((ProvinciaNascita == "") || (ProvinciaNascita == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strProvinciaNascita.focus();
           return false;
        }
        //Effettua il controllo sul campo NAZIONALITA 
        else if ((Nazionalita == "") || (Nazionalita == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strNazionalita.focus();
           return false;
        }
        //Effettua il controllo sul campo STATO CIVILE
        else if ((StatoCivile == "") || (Stato Civile == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strStatoCivile.focus();
           return false;
        }
        //Effettua il controllo sul campo VIA (RESIDENZA) 
        else if ((ResidVia == "") || (ResidVia == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strResidVia.focus();
           return false;
        }
        //Effettua il controllo sul campo CITTA (RESIDENZA) 
        else if ((ResidCitta == "") || (ResidCitta == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strResidCitta.focus();
           return false;
        }
        //Effettua il controllo sul campo PROVINCIA (RESIDENZA) 
        else if ((ResidProvincia == "") || (ResidProvincia == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strResidProvincia.focus();
           return false;
        }
        //Effettua il controllo sul campo NAZIONE (RESIDENZA) 
        else if ((ResidNazione == "") || (ResidNazione == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strResidNazione.focus();
           return false;
        }
        //Effettua il controllo sul campo TELEFONO 
        else if ((Tel == "") || (Tel == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strTel.focus();
           return false;
        }
        //Effettua il controllo sul campo E-MAIL
        else if ((Email == "") || (Email == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strEmail.focus();
           return false;
        }
        //Effettua il controllo sul campo PATENTE
        else if ((Patente == "") || (Patente == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strPatente.focus();
           return false;
        }
        //Effettua il controllo sul campo CATEGORIE PROTETTE
        else if ((CategorieProtette == "") || (CategorieProtette == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strCategorieProtette.focus();
           return false;
        }
        //Effettua il controllo sul campo LIVELLO STUDI
        else if ((LivelloStudi == "") || (LivelloStudi == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.modulo.strLivelloStudi.focus();
           return false;
        }
			}
			alert("Controllo effettuato con successo. Il modulo sarà inviato.");
			return true;
			} 
			</script>

se volete vedere la form: http://chiabgigi.altervista.org/modulo.html

per adesso vorrei solo verificare l'esattezza dei dati, poi vedrò per il trasferimento dei dati al database

per favore potete dirmi dove sto sbagliando
grazie ciao
gigi
 
scusate:

questo è il codice form:
Codice:
<head><script type="text/javascript" src="controllo.js"></script></head>
<table width="1000" border="0">
	<tr>
      <td height="41" class="tah11"><span class="testo">&nbsp;Compila con i tuoi dati la form sottostante, il tuo profilo verra
        registrato nei nostri archivi e &nbsp;provvederemo a contattarti non appena si
        apriranno selezioni idonee alle tue caratteristiche.<br />
       <br />
        &nbsp;I campi con l'asterisco <b>*</b> sono obbligatori</span></td>
	  </tr>
	<script type="javascript" src="controllo.js"></script>
     </table>
	 
	 <table width="1147" height="77" border="0">
	 				 
			  <!--<form action="paginadestinazione.html" method="post" name="modulo" id="modulo" onSubmit="return controllo();">-->
	   
          
					
						<form name="modulo" method="post" action="" onSubmit="return controllo(this form)">
						<input type="hidden" name="PRIVACY" value>
						<input type="hidden" name="contratto" value>
			  <td colspan="" align="left" class="tah11"><strong>DATI PERSONALI</strong></td><tr>
                    
				
					
                        <td width="221" align="left" class="tah11">Nome <b class="errore">*</b>
                <input type="text" id="strNome" name="strNome" value=""></td> 
                        
                        <td width="215" align="left" class="tah11">Cognome <b class="errore">*</b>
                <input type="text" id="strCognome" name="strCognome" value=""></td>
						
                        <td width="206" align="left" class="tah11">Data Nascita <b class="errore">*</b>
                <input type="text" size="7" id="strDataNascita" name="strDataNascita" value="" align="middle" />(g/m/aaaa)</td></tr>
					  <tr>
					  
                        <td width="221" align="left" class="tah11">Sesso <b class="errore">*</b>
                        <label><input name="rbFlagSessoM" type="radio" value="m" id="rbFlagSessoM">Maschio</label>
                        <label><input type="radio" name="rbFlagSessoF" value="f" id="rbFlagSessoF">Femmina</label></td>
					  
					  <td width="215" align="left" class="tah11">Nato a  <b class="errore">*</b>
                     <input type="text"  id="strComuneNascita" name="strComuneNascita" value=""/></td>
   
                      <td width="206" align="left" class="tah11">Prov. di  <b class="errore">*</b>
                        <select name="strProvinciaNascita" size="1" class="tah11" id="strProvinciaNascita">
            <option selected></option>
            <option value="AG">Agrigento</option>
            <option value="AL">Alessandria</option>
            <option value="AN">Ancona</option>
            <option value="AO">Aosta</option>
            <option value="AR">Arezzo</option>
            <option value="AP">Ascoli Piceno</option>
            <option value="AT">Asti</option>
            <option value="AV">Avellino</option>
            <option value="BA">Bari</option>
            <option value="BL">Belluno</option>
            <option value="BN">Benevento</option>
            <option value="BG">Bergamo</option>
            <option value="BI">Biella</option>
            <option value="BO">Bologna</option>
            <option value="BZ">Bolzano</option>
            <option value="BS">Brescia</option>
            <option value="BR">Brindisi</option>
            <option value="CA">Cagliari</option>
            <option value="CL">Caltanissetta</option>
            <option value="CB">Campobasso</option>
            <option value="CE">Caserta</option>
            <option value="CT">Catania</option>
            <option value="CZ">Catanzaro</option>
            <option value="CH">Chieti</option>
            <option value="CO">Como</option>
            <option value="CS">Cosenza</option>
            <option value="CR">Cremona</option>
            <option value="KR">Crotone</option>
            <option value="CN">Cuneo</option>
            <option value="EN">Enna</option>
            <option value="FE">Ferrara</option>
            <option value="FI">Firenze</option>
            <option value="FG">Foggia</option>
            <option value="FO">Forl&igrave; - Cesena</option>
            <option value="FR">Frosinone</option>
            <option value="GE">Genova</option>
            <option value="GO">Gorizia</option>
            <option value="GR">Grosseto</option>
            <option value="IM">Imperia</option>
            <option value="IS">Isernia</option>
            <option value="SP">La Spezia</option>
            <option value="AQ">L'Aquila</option>
            <option value="LT">Latina</option>
            <option value="LE">Lecce</option>
            <option value="LC">Lecco</option>
            <option value="LI">Livorno</option>
            <option value="LO">Lodi</option>
            <option value="LU">Lucca</option>
            <option value="MC">Macerata</option>
            <option value="MN">Mantova</option>
            <option value="MS">Massa Carrara</option>
            <option value="MT">Matera</option>
            <option value="ME">Messina</option>
            <option value="MI">Milano</option>
            <option value="MO">Modena</option>
            <option value="NA">Napoli</option>
            <option value="NO">Novara</option>
            <option value="NU">Nuoro</option>
            <option value="OR">Oristano</option>
            <option value="PD">Padova</option>
            <option value="PA">Palermo</option>
            <option value="PR">Parma</option>
            <option value="PV">Pavia</option>
            <option value="PG">Perugia</option>
            <option value="PS">Pesaro e Urbino</option>
            <option value="PE">Pescara</option>
            <option value="PC">Piacenza</option>
            <option value="PI">Pisa</option>
            <option value="PT">Pistoia</option>
            <option value="PN">Pordenone</option>
            <option value="PZ">Potenza</option>
            <option value="PO">Prato</option>
            <option value="RG">Ragusa</option>
            <option value="RA">Ravenna</option>
            <option value="RC">Reggio Calabria</option>
            <option value="RE">Reggio Emilia</option>
            <option value="RI">Rieti</option>
            <option value="RN">Rimini</option>
            <option value="RM">Roma</option>
            <option value="RO">Rovigo</option>
            <option value="SA">Salerno</option>
            <option value="SS">Sassari</option>
            <option value="SV">Savona</option>
            <option value="SI">Siena</option>
            <option value="SR">Siracusa</option>
            <option value="SO">Sondrio</option>
            <option value="TA">Taranto</option>
            <option value="TE">Teramo</option>
            <option value="TR">Terni</option>
            <option value="TO">Torino</option>
            <option value="TP">Trapani</option>
            <option value="TN">Trento</option>
            <option value="TV">Treviso</option>
            <option value="TS">Trieste</option>
            <option value="UD">Udine</option>
            <option value="VA">Varese</option>
            <option value="VE">Venezia</option>
            <option value="VB">Verbania</option>
            <option value="VC">Vercelli</option>
            <option value="VR">Verona</option>
            <option value="VV">Vibo Valentia</option>
            <option value="VI">Vicenza</option>
            <option value="VT">Viterbo</option>
            <option value="XX">Altro</option>
                     </select> </td></tr>
			<tr>		 
        
		  <td width="221" align="left" class="tah11">Nazionalit&agrave;<b class="errore">*</b>
          <input type="text" id="strNazionalita" name="strNazionalita" value="" /></td>
		  
          <td width="215" align="left" class="tah11">Permesso di soggiorno <b class="errore">*</b>
           <label><input name="rbFlagPSoggiornoY" type="radio" value="Yes" id="rbFlagPSoggiornoY">Si</label>
          <label><input type="radio" name="rbFlagPSoggiornoN" value="No" id="rbFlagPSoggiornoN">No</label></td>
		  
          <td width="206" align="left" class="tah11">Stato civile <b class="errore">*</b>
          <select name="strStatoCivile" size="1" class="tah11" id="strStatoCivile" />          
            <option selected></option>
            <option value="Celibe" >Celibe</option>
            <option value="Nubile" >Nubile</option>
            <option value="Coniugato/a" >Coniugato/a</option>
            <option value="Vedovo/a" >Vedovo/a</option>
          </select></td></tr>
		  <tr>
		  
          <td colspan="" align="left" class="tah11"><strong>RESIDENZA</strong></td></tr>
		  <tr>
		  
		  <td width="221" align="left" class="tah11">Via<b class="errore">*</b>
          <input type="text" id="strResidVia" name="strResidVia" value="" /></td>

		  <td width="215" align="left" class="tah11">Citta<b class="errore">*</b>
          <input type="text" id="strResidCitta" name="strResidCitta" value="" /></td>
................................................		  
................................................                            
	 </form>

la riga
Codice:
<form action="paginadestinazione.html" method="post" name="modulo" id="modulo" onSubmit="return controllo();">-->
era originariamente quella che avevo messo all'inizio della form, l'ho racchiusa tra i tag poichè quando lanciavo lo script, oltre a non funzionare, quando ritornavo a vedere il codice notavo che tutta la riga era di colore nero, cioè es. 'form action' di solito è di colore giallo.
Spero di avere allegato tutto grazie ancora per la cortesia
ciao gigi
 
@lukeonweb
ciao sto leggendo le tue guide (javascript) sul tuo sito
(tralascio i complimenti perchè sarebbero esagerati)
leggendo le tue guide e testandole tutto va bene (logico)
allora ho provato in tutti i modi, modificando il file .js, ed utilizzando uno spezzone del codice del mio form a metere in pratica il tutto ma non ce la faccio.
es. in origine era cosi:
Codice:
 function controllo() {
        var Nome = document.modulo.strNome.value;
		var Cognome = document.modulo.strCognome.value;
		var DataNascita = document.modulo.strDataNascita.value;
		var ComuneNascita = document.modulo.strComuneNascita.value;
		var ProvinciaNascita = document.modulo.strProvinciaNascita.options[document.modulo.strProvinciaNascita.selectedIndex].value;
		var Nazionalita = document.modulo.strNazionalita.value;
		var StatoCivile = document.modulo.strStatoCivile.options[document.modulo.strStatoCivile.selectedIndex].value;
		var ResidVia = document.modulo.strResidVia.value;
		var ResidCitta = document.modulo.strRedisCitta.value;
		var ResidProvincia = document.modulo.strResidProvincia.options[document.modulo.strResidProvincia.selectedIndex].value;
		var ResidNazione = document.modulo.strResidNazione.options[document.modulo.strResidNazione.selectedIndex].value;
        var Tel = document.modulo.strTel.value;
		var Email = document.modulo.strMail.value;
		var Patente = document.modulo.strPatente.value;
		var CategorieProtette = document.modulo.strCategorieProtette.options[document.modulo.strCategorieProtette.selectedIndex].value;
		var LivelloStudi = document.modulo.strLivelloStudi.options[document.modulo.strLivelloStudi.selectedIndex].value;
		var Email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
 
        //Effettua il controllo sul campo NOME
        if ((Nome == "") || (Nome == "undefined")) {
           alert("Il campo Nome è obbligatorio.");
           document.modulo.strNome.focus();
           return false;
        }

io lo messo in vari modi l'ultimo è questo:
Codice:
function controllo() {
       var Nome = document.modulo.strNome.value;
		/* var Cognome = document.modulo.strCognome.value;
		var DataNascita = document.modulo.strDataNascita.value;
		var ComuneNascita = document.modulo.strComuneNascita.value;
		var ProvinciaNascita = document.modulo.strProvinciaNascita.options[document.modulo.strProvinciaNascita.selectedIndex].value;
		var Nazionalita = document.modulo.strNazionalita.value;
		var StatoCivile = document.modulo.strStatoCivile.options[document.modulo.strStatoCivile.selectedIndex].value;
		var ResidVia = document.modulo.strResidVia.value;
		var ResidCitta = document.modulo.strRedisCitta.value;
		var ResidProvincia = document.modulo.strResidProvincia.options[document.modulo.strResidProvincia.selectedIndex].value;
		var ResidNazione = document.modulo.strResidNazione.options[document.modulo.strResidNazione.selectedIndex].value;
        var Tel = document.modulo.strTel.value;
		var Email = document.modulo.strMail.value;
		var Patente = document.modulo.strPatente.value;
		var CategorieProtette = document.modulo.strCategorieProtette.options[document.modulo.strCategorieProtette.selectedIndex].value;
		var LivelloStudi = document.modulo.strLivelloStudi.options[document.modulo.strLivelloStudi.selectedIndex].value;
		var Email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;*/
 
        //Effettua il controllo sul campo NOME
        if (Nome == "")  {
           alert("Il campo Nome è obbligatorio.");
           }/*document.modulo.strNome.focus();
           return false;*/else { 
		   alert(Nome);
        }

il codice (per prova) del form:
Codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento senza titolo</title>
<script type="text/javascript" src="controllo.js"></script>
</head>

<body>

<form action="" method="post" name="modulo" id="modulo" onsubmit="controllo();">
Nome <b class="errore">*</b>
                <input type="text" id="strNome" name="strNome" value="">
				<input type="submit" value="invia"/>
				</form>
</body>
</html>

scusa se sono ignorante ma la funzione dice:
se Nome è vuoto tu mi dai un messaggio per avvisarmi di riempire il campo

o sbaglio

grazie spero in te
ciao gigi
 

Discussioni simili