Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: JavaScript päivämäärä ongelma

kk65926 [02.10.2004 10:23:14]

#

Ongelma on seuraavanlainen. Alla olevan scriptin pitäisi kirjoittaa sivulle päiväärä à la "2. lokakuuta 2004". Homma toimii ihan oikein IE:ssä, mutta muut selaimet (Firefox, Netscape, Mozilla) tuntuu ryppyilevän. Missähän vika piilee?

<SCRIPT LANGUAGE="JavaScript" type="text/javascript">
  DayName = new Array(7)
  DayName[0] = "sunnuntai"
  DayName[1] = "maanantai"
  DayName[2] = "tiistai"
  DayName[3] = "keskiviikko"
  DayName[4] = "torstai"
  DayName[5] = "perjantai"
  DayName[6] = "lauantai"

  MonthName = new Array(12)
  MonthName[0] = "tammikuuta "
  MonthName[1] = "helmikuuta "
  MonthName[2] = "maaliskuuta "
  MonthName[3] = "huhtikuuta "
  MonthName[4] = "toukokuuta "
  MonthName[5] = "kes&auml;kuuta "
  MonthName[6] = "hein&auml;kuuta "
  MonthName[7] = "elokuuta "
  MonthName[8] = "syyskuuta "
  MonthName[9] = "lokakuuta "
  MonthName[10] = "marraskuuta "
  MonthName[11] = "joulukuuta "

  function getDateStr(){
    var Today = new Date()
    var WeekDay = Today.getDay()
    var Month = Today.getMonth()
    var Day = Today.getDate()
    var Year = Today.getYear()

    if(Year <= 99)
      Year += 1900

    return DayName[WeekDay] + ", " + Day + ". " +
    MonthName[Month] + Year
}
</SCRIPT>

kenkku [02.10.2004 12:03:11]

#

En tiedä mikä mättää. Voisit vaikka käyttää PHP:tä. :P

Antti Laaksonen [02.10.2004 12:26:02]

#

Tässä on korjattu skripti, joka toimii IE:llä, Mozillalla ja Operalla (jos JavaScript on muuten toiminnassa).

<script language="JavaScript">

paivat = new Array("sunnuntai", "maanantai", "tiistai", "keskiviikko",
                   "torstai", "perjantai", "lauantai");
kuukaudet = new Array("tammi", "helmi", "maalis", "huhti", "touko", "kesä",
                      "heinä", "elo", "syys", "loka", "marras", "joulu");

var nyt = new Date();
var vuosi = nyt.getYear();

document.write(paivat[nyt.getDay()] + ", " + nyt.getDate() + ". " +
               kuukaudet[nyt.getMonth()] + "kuuta " +
               (vuosi > 1900 ? vuosi : vuosi + 1900));

</script>

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta