17. juni 2002 - 14:42Der er
3 kommentarer og 1 løsning
validering af dato
Hej derude! Jeg har brug for et script, der kan validere en form hvor indtastning af dato skal se således ud: yyyy-mm-dd. Hvis ikke den indtastede syntaks er rigtig, skal der komme en besked herom.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
function checkDato( datostreng ) { var format = /^\d\d\d\d-\d\d-\d\d$/; // ønsket format if ( format.test( datoStreng ) { // formatet er korrekt. var aar = parseInt( datoStreng.substring(0,4), 10 ); //årstal var maaned = parseInt( datoStreng.substring(5,7), 10 ); //manenr var dag = parseInt( datoStreng.substring(8,10), 10 ); //dag var dato = new Date( aar, maaned-1, dag ); if ( dato.getDate() == dag && dato.getMonth == maaned-1 ) { return true; // der blev indtastet en lovlig dato } } return false; // galt format eller ulovlig dato }; //end checkDato( string ) -> boolean
function valider ( formObjekt ) { if ( ! checkDato( formObjekt.datoFeltNavn.value ) { alert( "den indtastede dato duer ikke.\nBenyt formatet YYYY-MM-DD" ); formObjekt.datoFeltNavn.focus(); return false; }
// ... evt andre tests
return true; // ingen test fejlede, så alt er ok. }; //end valider( Form object ) -> boolean
// --> </script>
nede i din form kommandoe skriver du så; <form ... onsubmit="return valider( this );">
function checkDato( datoStreng ) { var format = /^\d\d\d\d-\d\d-\d\d$/; // ønsket format if ( format.test( datoStreng ) { // formatet er korrekt. var aar = parseInt( datoStreng.substring(0,4), 10 ); //årstal var maaned = parseInt( datoStreng.substring(5,7), 10 ); //manenr var dag = parseInt( datoStreng.substring(8,10), 10 ); //dag var dato = new Date( aar, maaned-1, dag ); if ( dato.getDate() == dag && dato.getMonth == maaned-1 ) { return true; // der blev indtastet en lovlig dato } } return false; // galt format eller ulovlig dato }; //end checkDato( string ) -> boolean
function valider ( formObjekt ) { if ( ! checkDato( formObjekt.datoFeltNavn.value ) { alert( "den indtastede dato duer ikke.\nBenyt formatet YYYY-MM-DD" ); formObjekt.datoFeltNavn.focus(); return false; }
// ... evt andre tests
return true; // ingen test fejlede, så alt er ok. }; //end valider( Form object ) -> boolean
function checkDato( datoStreng ) { var format = /^\d\d\d\d-\d\d-\d\d$/; // ønsket format if ( format.test( datoStreng ) ) { // manglede en slutparentes // formatet er korrekt. var aar = parseInt( datoStreng.substring(0,4), 10 ); //årstal var maaned = parseInt( datoStreng.substring(5,7), 10 ); //manenr var dag = parseInt( datoStreng.substring(8,10), 10 ); //dag var dato = new Date( aar, maaned-1, dag ); alert ( dato ); if ( dato.getDate() == dag && dato.getMonth() == maaned-1 // manglede () efter getMonth ) { return true; // der blev indtastet en lovlig dato } } return false; // galt format eller ulovlig dato }; //end checkDato( string ) -> boolean
function valider ( formObjekt ) { if ( ! checkDato( formObjekt.datoFeltNavn.value ) ) { // manglede en slutparentes alert( "den indtastede dato duer ikke.\nBenyt formatet YYYY-MM-DD" ); formObjekt.datoFeltNavn.focus(); return false; }
// ... evt andre tests
return true; // ingen test fejlede, så alt er ok. }; //end valider( Form object ) -> boolean
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.