Avatar billede twami Nybegynder
13. september 2004 - 18:44 Der er 12 kommentarer og
1 løsning

Forprogrammeret besked

Hej..

Jeg skal bruge et script hvor man f.eks. kan angive at d. 13/10/04 skal scriptet i browseren skrive: Tilykke med fødselsdagen Gitte!

Og så skal den skrive nogen andet 15/10/04 og 17/10/04 osv.

Nogen der kan fixe det?
Avatar billede skovenborg Nybegynder
13. september 2004 - 21:02 #1
du kan prøve:
datoArr = new Array();
  function createAlert(year,month,date,msg) {
      datoArr[datoArr.length] = [new Date(year-1900,month-1,date),msg];
  }
  createAlert(2004,10,13,"Tilykke med fødseldagen Gitte");
  createAlert(2004,10,15,"Tillykke med\n fødedagen Svend Herning");
  now_temp = new Date();
  now = new Date(now_temp.getYear(),now_temp.getMonth(),now_temp.getDate());
  msg = "";
  for (i=0;i<datoArr.length;i++) {
        if (datoArr[i][0].valueOf() == now.valueOf()) {
           
        msg = datoArr[i][1];
        break;
    }
  }
  if (msg != "") {alert(msg);}
Avatar billede twami Nybegynder
13. september 2004 - 21:51 #2
Jeg ved ikke meget til Javascript, men man kan vel ikke bare indsætte ovenstående i et HTML dokument? Skal der ikke stå noget inden??
Avatar billede skovenborg Nybegynder
13. september 2004 - 22:29 #3
jo du kan godt indsætte det i din html-kode, hvis du gør det på nogenlunde denne måde:
<div> <!-- I dette tilfælde indsætter vi blot beskeden i et div-element. Det virker også på andre felter -->
<script type="text/javascript">
datoArr = new Array();
  function createAlert(year,month,date,msg) {
      datoArr[datoArr.length] = [new Date(year-1900,month-1,date),msg];
  }
  createAlert(2004,10,13,"Tilykke med fødseldagen Gitte");
  createAlert(2004,10,15,"Tillykke med\n fødedagen Svend Herning");
  now_temp = new Date();
  now = new Date(now_temp.getYear(),now_temp.getMonth(),now_temp.getDate());
  msg = "";
  for (i=0;i<datoArr.length;i++) {
        if (datoArr[i][0].valueOf() == now.valueOf()) {
         
        msg = datoArr[i][1];
        break;
    }
  }
  if (msg != "") {document.write(msg);}
</script>
</div>
Avatar billede twami Nybegynder
14. september 2004 - 10:26 #4
Jeg kan ikke rigtig få det til at fungere. Hvi jeg har følgende html-dokument, burde scriptet så ikke skrive Tillykke med fødselsdagen?:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body><script type="text/javascript">
datoArr = new Array();
  function createAlert(year,month,date,msg) {
      datoArr[datoArr.length] = [new Date(year-1900,month-1,date),msg];
  }
  createAlert(2004,09,14,"Tilykke med fødseldagen Gitte");
  createAlert(2004,10,15,"Tillykke med\n fødedagen Svend Herning");
  now_temp = new Date();
  now = new Date(now_temp.getYear(),now_temp.getMonth(),now_temp.getDate());
  msg = "";
  for (i=0;i<datoArr.length;i++) {
        if (datoArr[i][0].valueOf() == now.valueOf()) {
         
        msg = datoArr[i][1];
        break;
    }
  }
  if (msg != "") {document.write(msg);}
</script>
</div>

</body>
</html>
Avatar billede skovenborg Nybegynder
14. september 2004 - 22:49 #5
det gør den også hos mig - mærkelig...
Avatar billede twami Nybegynder
15. september 2004 - 09:20 #6
Hvad gør den også hos dig? Virker scriptet eller viser den også en blank side hos dig?
Avatar billede skovenborg Nybegynder
15. september 2004 - 14:28 #7
den sagde (igår i hvert fald) Tillykke med fødelsdagen Gitte. Det var vel at mærke i Mozilla Firefox. Har ikke kigget på Interet Explorer.
Avatar billede twami Nybegynder
15. september 2004 - 21:27 #8
Der sker desværre ikke særlig meget i Explorer!

Er der ikke nogen som kan hjælpe...
Avatar billede skovenborg Nybegynder
16. september 2004 - 23:36 #9
okay, jeg har fundet fejlen. Den lå i IE's opfattelse af årstal, som ikke er året efter 1900, men bare det normale årstal. Mozilla ser også ud til at kunne klare dette, så du skal rette scriptet til:
<script type="text/javascript">
datoArr = new Array();
  function createAlert(year,month,date,msg) {
      d = new Date(year,month-1,date);
      datoArr[datoArr.length] = [d,msg];
  }
  createAlert(2004,9,14,"Tilykke med fødseldagen Gitte");
  createAlert(2004,10,15,"Tillykke med\n fødedagen Svend Herning");
  now_temp = new Date();
  now = new Date(now_temp.getFullYear(),now_temp.getMonth(),now_temp.getDate());
  msg = "";
  for (i=0;i<datoArr.length;i++) {
        if (datoArr[i][0].valueOf() == now.valueOf()) {
       
        msg = datoArr[i][1];
        break;
    }
  }
  if (msg != "") {document.write(msg);}
</script>
Avatar billede twami Nybegynder
17. september 2004 - 11:17 #10
Wuhuuuu. Godt arbejde! Tak for hjælpen Skovenborg :-)
Avatar billede twami Nybegynder
17. september 2004 - 11:18 #11
hvordan er det nu lige jeg får givet dig pointene?
Avatar billede skovenborg Nybegynder
17. september 2004 - 15:16 #12
hvis jeg svarer burde det ikke være et problem :-)
Avatar billede skovenborg Nybegynder
17. september 2004 - 16:17 #13
og tak for points :-)
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