Carissimi,
sono un assiduo frequentatore delle pagine di html.it e devo dire che grazie a questa realtà (Forum, CD html.it 2008) ho imparato tantissimo.
Mi sono specializzato più che altro nel linguaggio lato server PHP, e con quelli client faccio ancora a cazzotti
Utilizzo un semplice form di validazione che riuso a secondo dei casi, ma ogni tanto e non riesco a darmi spiegazioni non funge come dovrebbe.
andiamo nel caso specifico: Lo script controlla effetivamente tutti i campi, ho provato ad inserire i valori 1 ad 1 ed effettivamente il controllo funziona, ma quando i campi sono tutti completi e corretti non invia i dati, nessuna schermata di errore"
vi riporto il codice e resto in attesa di vostri consigli.
Grazie!!!
codice:
<script type="text/javascript" language="JavaScript">
<!--
function Modulo() {
// Variabili associate ai campi del modulo
var nprot = document.modulo.nprot.value;
var protdel = document.modulo.protdel.value;
var destinatario = document.modulo.destinatario.value;
var utente_nominativo = document.modulo.utente_nominativo.value;
var utente_cellulare = document.modulo.utente_cellulare.value;
//Effettua il controllo sul campo DESTINATARIO
if ((destinatario == "") || (destinatario == "undefined")) {
alert("Il campo DESTINATARIO e' obbligatorio.");
document.modulo.destinatario.focus();
return false;
}
//Effettua il controllo sul campo NOMINATIVO
else if ((utente_nominativo == "") || (utente_nominativo == "undefined")) {
alert("Il campo NOMINATIVO e' obbligatorio.");
document.modulo.utente_nominativo.focus();
return false;
}
//Effettua il controllo sul campo CELLULARE
else if ((utente_cellulare == "") || (utente_cellulare == "undefined")) {
alert("Il campo CELLULARE e' obbligatorio.");
document.modulo.utente_cellulare.focus();
return false;
}
//Effettua il controllo sul campo PROTOCOLLO
else if ((isNaN(nprot)) || (nprot == "undefined")|| (nprot == "")) {
alert("Il campo NUMERO PROTOCOLLO deve contenere un valore numerico.");
document.modulo.nprot.value = "";
document.modulo.nprot.focus();
return false;
}
//Effettua il controllo sul campo DATA PROTOCOLLO
else if (document.modulo.protdel.value.substring(2,3) != "/" ||
document.modulo.protdel.value.substring(5,6) != "/" ||
isNaN(document.modulo.protdel.value.substring(0,2)) ||
isNaN(document.modulo.protdel.value.substring(3,5)) ||
isNaN(document.modulo.protdel.value.substring(6,10))) {
alert("Inserire DATA PROTOCOLLO in formato gg/mm/aaaa");
document.modulo.protdel.value = "";
document.modulo.protdel.focus();
return false;
}
else if (document.modulo.protdel.value.substring(0,2) > 31) {
alert("Impossibile utilizzare un valore superiore a 31 per i giorni");
document.modulo.protdel.select();
return false;
}
else if (document.modulo.obbdata.value.substring(3,5) > 12) {
alert("Impossibile utilizzare un valore superiore a 12 per i mesi");
document.modulo.protdel.value = "";
document.modulo.protdel.focus();
return false;
}
else if (document.modulo.protdel.value.substring(6,10) < 1900) {
alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno");
document.modulo.protdel.value = "";
document.modulo.protdel.focus();
return false;
}
//INVIA IL MODULO
else {
document.modulo.action = "admin.php?p=nuovodocumento";
document.modulo.submit();
}
}
//-->
</script>