Ciao a tutti,
ho due campi dove inserisco la data, con questo codice controllo che l'utente inserisca correttamente la data
ora però dovrei fare un controllo e mandare un messaggio se la data inserita nel campo fine è maggiore del campo fine come posso fare senza distruggere queste due funzioni che sono molto utili?codice:<script language="JavaScript" type="text/javascript"> <!-- function controlla() { obj=document.inserisci.inizio.value.replace(/[^\d]/g,"0");; gg=obj.substr(0,2) mm=obj.substr(3,2); aa=obj.substr(6,4); strdata=gg+"/"+mm+"/"+aa; inizio = new Date(aa,mm-1,gg); daa=inizio.getFullYear().toString(); dmm=(inizio.getMonth()+1).toString(); dmm=dmm.length==1?"0"+dmm:dmm dgg=inizio.getDate().toString(); dgg=dgg.length==1?"0"+dgg:dgg dddata=dgg+"/"+dmm+"/"+daa if (dddata!=strdata) { alert("Verificare la data inserita!"); document.inserisci.inizio.value=dddata; // Nel campo viene scritta la data generata document.inserisci.inizio.value=""; // Il campo viene cancellato e... //document.inserisci.data.focus(); //...viene ridato il focus per il reinserimento } } //--> </script> <script language="JavaScript" type="text/javascript"> <!-- function controlla1() { obj=document.inserisci.fine.value.replace(/[^\d]/g,"0");; gg=obj.substr(0,2) mm=obj.substr(3,2); aa=obj.substr(6,4); strdata=gg+"/"+mm+"/"+aa; fine = new Date(aa,mm-1,gg); daa=fine.getFullYear().toString(); dmm=(fine.getMonth()+1).toString(); dmm=dmm.length==1?"0"+dmm:dmm dgg=fine.getDate().toString(); dgg=dgg.length==1?"0"+dgg:dgg dddata=dgg+"/"+dmm+"/"+daa if (dddata!=strdata) { alert("Verificare la data inserita!"); document.inserisci.fine.value=dddata; // Nel campo viene scritta la data generata document.inserisci.fine.value=""; // Il campo viene cancellato e... //document.inserisci.data.focus(); //...viene ridato il focus per il reinserimento } } //--> </script>
Queste funzioni non le richiamo tramite onSubmit ma nei campi inizio e fine così:
graziecodice:onChange="controlla()" onKeyUp="if (this.value.length==10){this.blur()}"![]()

Rispondi quotando