Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: JavaScript: Javascript kalenteri

beazil90 [01.09.2011 16:06:48]

#

Eli tein tuossa harjoituksen vuoksi kalenterin käyttäen kieltä javascript.
Nyt kuitenkin on hieman oudohko ongelma, johon ehkä täältä saisin apua. Kun kalenteria käyttää chromella, kaikki toimii hienosti, mutta millään muulla selaimella sitten ei. Ilmeisesti funktioni laskekalenteri jostain syystä jättää homman kesken muilla selaimilla, eli taulukolle kalenterille tehdään vain nollaus, ja sitten palautetaan taulukon arvot. En keksi kuitenkaan mikä homman vetää puihin, ehkä silmäni ei ole riittävän harjaantunut löytämään virheitä, kun kuitenkin suht noviisi olen etenkin javascriptin kanssa (tämä kalenteri siis ensimmäinen harjoitus jonka tein). Koodin olen kirjoittanut alusta asti itse, joskin katsoin toisesta kalenterista toiminnallisuuteen hyvin paljon neuvoa. (funktio clicktd on tulevaisuuden käyttöä varten, ja sillä ei pitäisi olla vaikutusta kalenterin toimivuuteen, vaikka se koodissa jo möllöttääkin.) Ja sitten se linkki (käytännössä kaikki kalenterin koodi pitäisi löytyä siitä) http://ameba.lpt.fi/~laakpasi/testailua/kalenteri.html

Metabolix [01.09.2011 16:17:42]

#

Useimmissa selaimissa on virhekonsoli, jonka saa auki valikosta ja josta näkee, mikä menee pieleen. (Firefoxiin ja IE:hen kannattaa asentaa Firebug.)

En käsitä, miten koodi voi Chromellakaan toimia, kun siinä on näin vakava virhe:

Error: document.getElementById("input") is null

beazil90 [01.09.2011 16:24:56]

#

Tuon errorin huomasin jo virhekonsolissa, ja se liittyy nimenomaan tuohon funktioon clicktd, jota en siis missään vielä käytä (tuon inputin tilalle lyön sitten vain tekstikentän id:n, johon haluan päivämäärän lisätä) Mutta homma ratkesikin erään tuttavan avustuksella.
Rivillä 27 ollut "var pvm=new Date(kk+".01."+vv);" pilasi homman, vaihdoin tuon muotoon "var pvm=new Date(vv,kk,1);" ja nyt pelittää hienosti

Metabolix [01.09.2011 16:36:08]

#

beazil90 kirjoitti:

jota en siis missään vielä käytä

Jos et käyttäisi sitä funktiota, virhettä ei näkyisi.

beazil90 [01.09.2011 16:40:36]

#

Ahaa joo, olet oikeessa :D Onhan se tuolla olemassa jokaisen päivän onclick-funktiona. Noh, jokatapauksessa nyt koodi toimii, ja lisäsin tuon input-kentänkin tuonne, eli kun klikkaa päivämäärää, input kenttään syötetään se päivämäärä, jota on klikattu

Vastaus

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

Tietoa sivustosta