Avatar billede Slettet bruger
04. november 2003 - 10:51 Der er 5 kommentarer og
1 løsning

debaugging dato validering

Hvad er der galt med dette script?

function checkDato( datoStreng ) {
    var format = /^\d\d\d\d-\d\d-\d\d$/;
    if ( format.test( datoStreng ) ) {         
                       
        var aar    = parseInt( datoStreng.substring(0,4), 10 );
        var maaned = parseInt( datoStreng.substring(5,7), 10 );
        var dag    = parseInt( datoStreng.substring(8,10), 10 );
        var dato = new Date( aar, maaned-1, dag );
        if (  dato.getDate() == dag
            && dato.getMonth() == maaned-1 
          ) {
            error = 0; 
        }
    }
    error = 1;
};

function validering()
{
error = 0;
if((document.form1.felt.value=='') && (error==0)) 
{       
alert('Du skal give din webpage et navn!');
document.form1.felt.focus();
error = 1;       
}           
if((document.form1.startdato.value=='') && (document.form1.slutdato.value=='') && !(document.form1.permanent.checked) && (error==0)) 
{       
alert('Du skal angive en dato eller vælge "Vis altid"');
document.form1.start.focus();
error = 1;       
}
if((!checkDato(document.form1.start.value)) && (error==0))
{
alert('Den indtastede dato er ikke gyldig. ÅÅÅÅ-MM-DD');
document.form1.start.focus();
error = 1;
}       
if(error == 0)
document.form1.submit();   
}
Avatar billede mm12010 Nybegynder
04. november 2003 - 11:26 #1
prøv sådan:

function checkDato(datoStreng){
    var format = /^\d\d\d\d-\d\d-\d\d$/;
    if(format.test(datoStreng)){         
        var aar=parseInt(datoStreng.substring(0,4),10);
        var maaned=parseInt(datoStreng.substring(5,7),10);
        var dag=parseInt(datoStreng.substring(8,10),10);
        var dato=new Date(aar, maaned-1, dag);
        if(dato.getDate()==dag&&dato.getMonth()==maaned-1){
            return true; 
            }
        }
    return false;
    }

function validering(){
    error=0;
    if(document.form1.felt.value==''){       
        alert('Du skal give din webpage et navn!');
        document.form1.felt.focus();
        error=1;       
        }           
    if((document.form1.startdato.value=='')&&(document.form1.slutdato.value=='')&&!(document.form1.permanent.checked)&&(error==0)){     
        alert('Du skal angive en dato eller vælge "Vis altid"');
        document.form1.startdato.focus();
        error=1;       
        }
    if((!checkDato(document.form1.startdato.value))&&(error==0)){
        alert('Den indtastede dato er ikke gyldig. ÅÅÅÅ-MM-DD');
        document.form1.startdato.focus();
        error=1;
        }       
    if(error==0){
        document.form1.submit();   
        }
    }
Avatar billede mm12010 Nybegynder
04. november 2003 - 11:31 #2
if((!checkDato(document.form1.startdato.value))&&(error==0)&&(!document.form1.permanent.checked)){
        alert('Den indtastede dato er ikke gyldig. ÅÅÅÅ-MM-DD');
        document.form1.startdato.focus();
        error=1;
        }
Avatar billede Slettet bruger
04. november 2003 - 14:42 #3
smid et svar så skal jeg kyle nogle point din vej
Avatar billede mm12010 Nybegynder
04. november 2003 - 15:01 #4
kast :o)
Avatar billede Slettet bruger
04. november 2003 - 15:16 #5
grib ;0)
Avatar billede mm12010 Nybegynder
04. november 2003 - 15:27 #6
takker :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester