Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno datum a čas do inputu

zdravím,
chtěl jsem se zeptat, jak mám upravit kod níže, aby se mi do klasického textového inputu zobrazoval datum a čas...

<script>
function naplnCas (){
var datum = new Date(); // prave aktualni cas
aktualniCas = datum.getHours() + "." + datum.getMinutes() + ":" + datum.getSeconds();
// vybral jsem z data, co potrebuju a obalil znamenky, aby se to prevedlo na retezec
window.document.getElementById("cas").innerHTML = aktualniCas;
// vypocitana hodnota se vklada jako html dovnitr elemnetu, ktery ma id "cas"
}

naplnCas(); //naplneni na zacatku
window.setInterval("naplnCas()", 1000); //pravidelna zmena, 1000 je sekunda

</script>

<span id="cas"></span>
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Základom je používať ladiace nástroje, ktoré poskytujú všetky rozumné prehliadače. Takže stlač F12 a…
los 14.01.2014 22:03
los
ok díky, už to šlape :-) poslední
tomas.s 17.01.2014 15:17
tomas.s

Základom je používať ladiace nástroje, ktoré poskytujú všetky rozumné prehliadače. Takže stlač F12 alebo Ctrl+Shift+I alebo niečo podobné, aby sa zobrazil webový inšpektor. V ňom je záložka s konzolou, v ktorej sú vypísané všetky chybové hlásenia z aktuálnej stránky. Z nich je potom zrejmé, kde je chyba.

A ešte pár poznámok:
1. V zápise window.document.getElementById nie je potrebné písať window. V kontexte prehliadača je window globálny objekt, takže stačí napísať document.getElementById. To isté sa týka window.setInterval.

2. Funkcia setInterval síce akceptuje ako vstup aj reťazec, ale v tomto prípade je to úplne zbytočné použitie kanóna na vrabce. V niektorých prostrediach by sa taký zápis ani nespustil vďaka Content Security Policy. Dá sa to zapísať priamo ako setInterval(naplnCas, 1000).

3. Lokálna premenná aktualniCas nie je deklarovaná, chýba tam kľúčové slovo var. Takto sa z nej stala globálna premenná.

Zpět do poradny Odpovědět na původní otázku Nahoru