Avatar billede myg Nybegynder
20. marts 2001 - 11:35 Der er 1 kommentar og
1 løsning

Validate efter en bestemt dato... how????

Hejsa

Jeg har lavet en simpel function.... men jeg skal ha\' den til at checke på om datoen er efter 29-06 (dd-mm)...

Hjææææææææælp


<script language=\"javascript\">
    function Valider(){
           
        if (document.frmDato.dato.value == \"dd-mm-2001\") {
            alert(\"Angiv venligst en dato!\");
            return(false);
        }
    }
    //-->
</script>

<form method=\"post\" action=\"fest.asp?target=Dato\" id=\"frmDato\"
name=\"frmDato\" onsubmit=\"return(Valider())\">
    <table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
        <tr>
            <td>
                <INPUT type=\"text\" value=\"dd-mm-2001\"
id=\"dato\" name=\"dato\" class=\"felt\" size=\"18\">
            </td>
            <td>
                 <INPUT type=\"submit\" value=\"Godkend\"
id=button1 name=button1 class=\"knap\">
            </td>
        </tr>
    </table>
</form>

Med venlig hilsen

Michael Christensen
http://www.site-optimizer.com
Avatar billede jakoba Nybegynder
20. marts 2001 - 12:12 #1
// indsæt indtastede værdier i mo_num og day_num
var mo_num = 0;    // ciffer for måned ( januar=0, december=11 )
var day_num = 0;  // ciffer for dag
// indsæt dato der skal testes imod i mo_test og day_test
vat mo_test  = 5;  // NB månedsnummer for juni er 5.
var day_test = 29;
  if (  ( mo_num > mo_test )
      || (  mo_num = mo_test
          && day_num > day_test ) ) {
    // indtastet dato er efter  29ne juni
  } else {
    // indtasted dato er før eller lig med 29ne juni
  };
  testdato  = new Date(yr_num, 5, 29 );  // NB månedsnummer-1
  tastetdate = new Date(yr_num, mo_num, day_num);
Avatar billede jakoba Nybegynder
20. marts 2001 - 12:32 #2
Ups. ignorer de 2 sidste linier, det er fra noget andet.

<script>

// indsæt dato der skal testes imod i mo_test og day_test
vat mo_test  = 5;  // NB månedsnummer for juni er 5.
var day_test = 29;

function fejl ( flt ) {
  flt.focus();
  alert(\"feltet er ikke korrekt udfyldt.\");
  return false;
}; //end fejl ( input Object )

function Valider() {
  var inp = document.forms.frmDato.dato.value.split(\"-\")
  if ( inp.length < 2 ) // for få felter eller ikke skilt med \"-\"?
    return fejl(document.forms.frmDato.dato);
  day_num = inp[0];
  mo_num = inp[1] -1;
  if ( day_num <= 0 || 31 < day_num )  // lovligt nr for månedsdag?
    return fejl(document.forms.frmDato.dato);
  if ( mo_num < 0 || 11 < mo_num )    // lovligt nr for måned?
    return fejl(document.forms.frmDato.dato);
  if (  ( mo_num > mo_test )
    || (  mo_num = mo_test
        && day_num > day_test ) ) {
    // indtastet dato er efter  29ne juni
    // indsæt  \"return fejl(...)\" linie i det valg der ikke er ok
  } else {
    // indtasted dato er før eller lig med 29ne juni
  };
  return true;  // hvis ingen test fejler er feltet ok.
};

</script>

PS: din  onsubmit streng er forkert. det skal være:
<form method=\"post\" action=\"fest.asp?target=Dato\" id=\"frmDato\"
name=\"frmDato\" onsubmit=\"return Valider()\">

dvs ikke parentes on Valider() (( men burde virke alligevel )).

mvh JakobA
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