Salve a tutti, sono nuovo del Forum , volevo una mano a risolvere un problema.
Tengo a precisare che non ho molta confidenza con JS, ho copiato il codice del seguente link , ma il problema sorge nel momento in cui volessi controllare la correttezza della data solo e soltanto qualora in campo che la contiene sia pieno.
Ho provato con il seguente codice, ma il risultato è che:
-Se il campo data è vuto lo scritp funziona (la query da il risultato corretto);
-Se il campo data è pieno ma scorretto lo script funziona infatti mi avverte;
-Se il campo data è pieni e corretto lo script non funziona.
Mi affido alla vostra esperienza.
Grazie in aticipo.
codice:<script language="javascript"> <!-- function Modulo() { // Variabili associate ai campi del modulo var data = document.modulo.data.value; var numero = document.modulo.numero.value; //Effettua il controllo sul campo NUMERO if ((isNaN(numero)) || (numero == "undefined")) { alert("Il campo Numero deve contenere un valore numerico."); document.modulo.numero.value = ""; document.modulo.numero.focus(); return false; } else if(document.modulo.data.value != ""){ //Effettua il controllo sul campo DATA if (document.modulo.data.value.substring(2,3) != "/" || document.modulo.data.value.substring(5,6) != "/" || isNaN(document.modulo.data.value.substring(0,2)) || isNaN(document.modulo.data.value.substring(3,5)) || isNaN(document.modulo.data.value.substring(6,10))) { alert("Inserire Data in formato gg/mm/aaaa"); document.modulo.data.value = ""; document.modulo.data.focus(); return false; } else if (document.modulo.data.value.substring(0,2) > 31) { alert("Impossibile utilizzare un valore superiore a 31 per i giorni"); document.modulo.data.select(); return false; } else if (document.modulo.data.value.substring(3,5) > 12) { alert("Impossibile utilizzare un valore superiore a 12 per i mesi"); document.modulo.data.value = ""; document.modulo.data.focus(); return false; } else if (document.modulo.data.value.substring(6,10) < 1900) { alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno"); document.modulo.data.value = ""; document.modulo.data.focus(); return false; } } //INVIA IL MODULO else { document.modulo.action = "view.php"; document.modulo.submit(); } } //--> </script>

Rispondi quotando