Professional Documents
Culture Documents
UVOD
JavaScript je jezik koji je namenjen upotrebi na webu kako bi definisao dinamike sadraje na web stranici. Slubeno ime JavaScripta je ECMAScript. Standard je donela organizacija ECMA International (European Computer Manufacturers Association) 1997 god., a ISO ga je prihvatio 1998 god. Jezik je razvio Brendan Eich za Netscap Navigator 2.0 (1996.). JavaScript kod se izvrava u web browser-u, pa se ovakav oblik programiranja naziva programiranje na klijentskoj strani (eng. client side scripting). Vano: JavaScript i Java su dva razliita jezika sa slinom sintaksom.
N. Jovanovid, 2009
JavaScript moe
Da ubaci dinamiki sadraj na web stranicu Da reaguje na dogaaje (npr. klik mia, . . . ) Da ita i menja sadraj HTML dokumenta Da izvri validaciju podatka Da detektuje koji browser korisnik koristi ...
N. Jovanovid, 2009
OSNOVE
JavaScript je case sensitive odnosno razlikuje velika i mala slova. Komande se razdvajaju prelaskom u novi red ili znakom ;. Znak ; na kraju linije nije obavezan, ali je uobiajen. Blokovi se (kao i u Javi) odvajaju vitiastim zagradama { i } . Komentari (kao u Javi) piu se unutar oznaka /* i */ ili nakon //.
N. Jovanovid, 2009
Ako je skript ukljuen u zaglavlju (head), ignorisan je do poziva Ako je skript ukljuen u telu (body), rezultat se prikazuje na veb strani Ako je skript rukovalac dogaaja (handler), skript de se izvriti kad se desi dogaaj
N. Jovanovid, 2009
Primer 1
<html> <head> <title>Prva JavaScript stranica</title> </head> <body> <script type="text/javascript"> document.write("<h1>Dobar dan!</h1>"); </script> </body> </html>
N. Jovanovid, 2009
Primer 2
<html> <head> <title>Prva JS stranica</title> </head> <body> <script type="text/javascript" src=dok.js"> </script> </body> </html>
N. Jovanovid, 2009
dok.js
document.write("<h1>Dobar dan! </h1>");
N. Jovanovid, 2009
PROMENLJIVE
Pravila za imenovanje:
prvi znak mora biti slovo engleske abecede ili donja crta ("_") mogu sadrati brojeve i slova engleske abecede velika i mala slova se razlikuju, ali, uobiajeno je da se piu malim slovima! kljune rei (for, if, else, class, byte, int...) ne mogu se koristiti u nazivu identifikatora
Promenljive nemaju tipove tj. u svaku promenljivu moemo smestiti vrednosti bilo kog tipa. (Vrednosti imaju tipove!)
N. Jovanovid, 2009
Deklarisanje promenljivih
var a; var x = 5; var auto ="Volvo";
Promenljive moemo deklarisati na bilo kom mestu u kodu. Promenljive se ne moraju deklarisati. U sluaju da promenljiva nije deklarisana, njeno prvo korienje smatra se deklaracijom.
N. Jovanovid, 2009
Aritmetiki operatori
N. Jovanovid, 2009
Logiki operatori
N. Jovanovid, 2009
Operatori dodele
N. Jovanovid, 2009
Selekcije
if..else kao u Javi switch kao u Javi
N. Jovanovid, 2009
If ... else
if (uslov){ ...blok A... } else { ...blok B... }
uslov
blok A
blok B
omoguduje uslovno izvoenje dela programa ako je zadovoljen odgovarajudi izraz else grana se izvrava ako ni jedan od prethodnih izraza nije zadovoljen
N. Jovanovid, 2009
Primer 3
<SCRIPT LANGUAGE="JavaScript"> <!-var datum = new Date(); var sat = datum.getHours(); if (sat > 5 && sat < 13){ document.write('<BODY BGCOLOR="blue">Dobro jutro!') } if (sat > 12 && sat < 19){ document.write('<BODY BGCOLOR="green">Dobar dan!') } if (sat > 18 || sat < 6){ document.write('<BODY BGCOLOR="silver">Dobro vee!') } --> </SCRIPT>
N. Jovanovid, 2009
Uslovni izrazi
Uslovnim izrazom moemo prihvatiti jednu od dve vrednosti navedene u uslovu. Evo sintakse i primera:
(uslov) ? izraz1 : izraz2 status = (prosek <= 8) ? "placaju" : "besplatno"
Ako je uslov istinit (true), izraz ima vrednost izraz1, u suprotnom ima vrednost izraz2.
N. Jovanovid, 2009
switch
switch (izraz){ case konstanta1: ...naredbe... break case konstanta2: ...naredbe... break default: ...naredbe ako nije zadovoljen ni jedan uslov }
N. Jovanovid, 2009
Primer 4
<html> <head> </head> <body> <script type="text/javascript"> var datum=3; switch(datum){ case 1:{ document.write("Ponedeljak!"); break } case 2:{ document.write("Utorak!"); break } case 3:{ document.write("Sreda!"); break } case 4:{ document.write("Cetvrtak!"); break } case 5:{ document.write("Petak!"); break } default:{ } </script> </body> </html> }
document.write("Pogresan unos!");
N. Jovanovid, 2009
Petlje
for kao u Javi while kao u Javi do..while kao u Javi postoji i for..in petlja, koja omogudava efikasne iteracije sa lanovima niza.
N. Jovanovid, 2009
for (inicijalizacija; test; inkrement){ ...niz naredbi... } inicijalizacija, na poetku petlje - inicijalizuje promenljivu (varijablu) na poetku izvoenja svake iteracije proverava se test uslov; ako je uslov istinit, izvoenje se nastavlja inae se prekida na kraju svake iteracije izvrava se trei izraz povedava/smanjuje broja
N. Jovanovid, 2009
Primer 5
<html> <head></head> <body> <SCRIPT LANGUAGE="JavaScript"> for (var i = 1; i <= 10; i++){ document.write('Vrednost i = ' + i); document.write("<br>"); } </SCRIPT> </body> </html>
N. Jovanovid, 2009
Zadatak
Odtampati sve parne brojeve od 0 do 100
N. Jovanovid, 2009
Zadatak
Izraunati faktorijel broja N
N. Jovanovid, 2009
while
while (uslov) { ...niz naredbi... }
blok A
uslov
uslov se proverava na poetku izvoenja, a petlja se izvrava sve dok je zadovoljen zadati uslov ako uvslov nije zadovoljen na poetku, program nede ni udi u petlju
N. Jovanovid, 2009
do ... while
do {
blok A
...niz naredbi...
} while (uslov);
uslov
uslov se proverava na kraju izvoenja petlje ak i ako izraz nije zadovoljen program de barem jednom izvriti petlju
N. Jovanovid, 2009
break
prekida tekudu while ili for strukturu i nastavlja iza nje. i = 0; n = 0; while (i < 5) { i++ if (i == 3) { break} else { n += i } }
N. Jovanovid, 2009
continue
while (uslov) { if (izraz1) { break; } else { continue; } } break slui za prekidanje izvoenja petlje i nastavak izvoenja programskog koda iza petlje continue vrada izvoenje petlje na poetak
N. Jovanovid, 2009
Primer 6
<html> <head></head> <body> <script type="text/javascript"> var i=0; while (i<=10) { if (i<=4) { document.write('Vrednost i=' + i + '<br />'); i=i+1; continue; } else { break; } document.write("KRAJ PETLJE"); } </script> </body> </html>
N. Jovanovid, 2009
Zadatak
Stampati brojeve od 0 do 100. Svaki paran broj odstampati u novom redu.
N. Jovanovid, 2009
Funkcije
Funkcije se definiu slino kao u Javi, ali kako promeljive nemaju tipove, ne navode se tipovi argumenata niti tip povratne vrednosti
// funkcija sa 3 argumenta: function naziv_funkcije(var1, var2, var3){ ... telo funkcije ... return vrednost } // funkcija bez argumenata: function naziv_funkcije2(){ ...telo funkcije }
Funkcija moe (ali ne mora) da ima povratnu vrednost. Vrednost se vrada pomodu naredbe return. Kako bi bili sigurni da se funkcija nee izvravati dok ne bude pozovana, potrebno je drati njihove definicije unutar head taga
N. Jovanovid, 2009
Primer 7
<html> <head></head> <body> <script type="text/javascript"> var a1=3; var b1=5; var rez = povrsina(a1, b1); document.write('Povrsina pravougaonika je ' + rez); function povrsina(a,b) { return a*b; } </script> </body> </html>
N. Jovanovid, 2009
Zadatak
Napisati funkciju fakt(n), koja izraunava faktorijel broja n
N. Jovanovid, 2009
NEW iskaz
definie novi objekt na bazi postojedeg.
N. Jovanovid, 2009
THIS iskaz
referenca na tekudi objekt.
Donji primer definie da se klikom na objekt poziva funkcija slucajniBroj() , a kao parametar se prenosi naziv tekude forme (this.form): onClick="slucajniBroj(this.form)"
N. Jovanovid, 2009
Nizovi
Sadre skup podataka koji je definisan u okviru jedne promenljive Niz se kreira pomodu rei new i konstruktora array() na slededi nain: var imeNiza= new Array(); arrayObjectName = new Array([element0, element1, ..., elementn]) Svaki podatak u okviru niza se naziva element
N. Jovanovid, 2009
Pojedinanom elementu se pristupa tako to se navodi njegov indeks u okviru srednjih zagrada
N. Jovanovid, 2009
N. Jovanovid, 2009
Primer 8
<html> <body> <script type="text/javascript"> var auto= new Array(); auto[0] = "Mazda"; auto[1] = "Audi"; auto[2] = "BMW"; for (i=0; i<auto.length; i++){ document.write(auto[i] + "<br />"); } </script> </body> </html>
N. Jovanovid, 2009
Zadatak
Napisati skript koji sortira niz X po opadajudem redosledu.
N. Jovanovid, 2009
Primer 9: String
<html> <body> <script type="text/javascript"> var txt = "Hello World!"; document.write("<p>Big: " + txt.big() + "</p>"); document.write("<p>Small: " + txt.small() + "</p>"); document.write("<p>Bold: " + txt.bold() + "</p>"); document.write("<p>Italic: " + txt.italics() + "</p>"); document.write("<p>Fixed: " + txt.fixed() + "</p>"); document.write("<p>Strike: " + txt.strike() + "</p>"); document.write("<p>Fontcolor: " + txt.fontcolor("green") + "</p>"); document.write("<p>Fontsize: " + txt.fontsize(6) + "</p>"); document.write("<p>Subscript: " + txt.sub() + "</p>"); document.write("<p>Superscript: " + txt.sup() + "</p>"); document.write("<p>Link: " + txt.link("http://www.pr.ac.rs") + "</p>"); document.write("<p>Blink: " + txt.blink() + " (ovo ne redi u IE, Chrome, Safari)</p>"); </script> </body> </html>
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
DOM objekti
objekti (objects) imaju odgovarajuda svojstva (properties) sa odreenim vrednostima (values)
body.bgColor="red" - svojstvo odreuje da je boja pozadine tela dokumenta (body objekta) crvena
N. Jovanovid, 2009
dokument
forme
slike
linkovi
telo
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
JavaScript objekti
JavaScript poseduje izvestan skup predefinisanih objekata: Date, Array, Math. Razmotrimo ih na primeru objekta Date.
objektom:
getHours(), setHours() za dobijanje i postavljanje asova getMinutes(), setMinutes() za dobijanje i postavljanje minuta getMonth(), setMonth() za dobijanje i postavljanje meseca
N. Jovanovid, 2009
.... sada =new Date(); document.write('Vreme je:' + sada.getHours() + ':' + sada.getMinutes() + '<br>'); document.write('Datum je:' + sada.getDate() + '/' + (sada.getMonth()+1) +'/' +(2000 + sada.getYear()));
N. Jovanovid, 2009
Primer 12
<HTML> <HEAD> <SCRIPT> <!-var slika = '<IMG SRC="sl1.gif">' var datum = new Date() function proveraIsteka(datumIsteka){ var datIsteka = new Date(datumIsteka) if (datum.getTime() <= datIsteka.getTime()) { document.write(slika); document.write("<HR>slika ce biti vidljiva do dana:<BR>" + datIsteka); } else { document.write("<HR>slika je bila vidljiva do dana:<BR>" + datIsteka); } } //--> </SCRIPT> </HEAD> <BODY> <H4>Primer slike koja je vidljiva samo do odredjenog datuma...</H4> <SCRIPT> /* datum do kada zelite da slika bude vidljiva - 31. 12. 2011.! */ proveraIsteka("December 31, 2011") </SCRIPT></BODY> </HTML> N. Jovanovid, 2009
Zadatak
Napisati JavaScrip kod koji uporeuje zadati datum sa dananjim datumom.
N. Jovanovid, 2009
gde BGCOLOR oznaava boju pozadine (od #000000 do #FFFFFF u RGB modelu boja), TEXT oznaava boju slova (od #000000 do #FFFFFF u RGB modelu boja). Obino se za boje teksta i boju pozadine uzimaju kontrastne boje ili boje sa razliitim brightness tonom, npr. bela slova na crnoj pozadini, crna slova na utoj pozadini... JavaScript moe da pomogne da web stranica izgleda dinaminije i da se njen izgled vie puta menja u toku poseta u okviru jednog dana, ako postignete da se boje pozadine menjaju danju, u podne, nodu, ujutru,...
N. Jovanovid, 2009
Primer 13
<HTML><HEAD> </HEAD><BODY> Primer izbora boje podloge (BODY BGCOLOR) zavisno od doba dana....<br> <SCRIPT LANGUAGE="JavaScript"> <!-var datum = new Date(); /* prihvatanje tekuceg datuma u promenljivu */ var sati = datum.getHours(); /* prihvat tekuceg cas u promenljivu */ if (sati > 4 && sati < 7){ document.write('<BODY BGCOLOR="#0000FF" TEXT="#FFFFFF">Sada je izmedju 5 i 7 sati ujutro...') } if (sati > 6 && sati < 9){ document.write('<BODY BGCOLOR="#0088FF" TEXT="#FFFFFF">Sada je izmedju 7 i 9 sati ujutro...') } if (sati > 8 && sati < 18){ document.write('<BODY BGCOLOR="#808080" TEXT="#FFFFFF">Sada je izmedju 9 i 18 sati...') } if (sati > 17 && sati < 20){ document.write('<BODY BGCOLOR="#FFA500" TEXT="#FFFFFF">Sada je izmedju 18 i 20 sati...') } if (sati > 19 && sati < 22){ document.write('<BODY BGCOLOR="#FF55FF" TEXT="#FFFFFF">Sada je izmedju 20 i 22 sat...') } if (sati > 21 || sati < 5){ document.write('<BODY BGCOLOR="#FF0000" TEXT="#FFFFFF">Sada je izmedju 22 i 5 sata u...') N. Jovanovid, 2009 } //--> </SCRIPT> </BODY> </HTML>
N. Jovanovid, 2009
popup box-ovi
Okvir (prozor) - prikazuje se u prvom planu, na odreenom mestu Posledica nekog dogaaja Omoguduje: Upozoravanje korisnika Izbor - potvrivanje ili otkazivanje Unoenje traenih informacija Obavezuje na neku akciju Jednostavan mehanizam otklanjanja greaka Sadri vrednost jedne promenljive Metode: alert(), confirm(), prompt()
N. Jovanovid, 2009
Metoda alert
Prikazuje tekst - parametar metode u prozoru sa dugmetom OK Parametar: konstantni string:
alert('niska karaktera'); ime promenljive: alert(ime_promenljive);
Konkatenacija:
alert('niska karaktera' + ime_promenljive);
N. Jovanovid, 2009
Metoda confirm
Prikazuje tekst - parametar metode; Omoguduje izbor: dugme "OK", "Cancel" Metod vrada true za OK, false za Cancel Zadavanje OK, Cancel akcija
Primer 15
<html> <head> <script language="JavaScript" type="text/javascript"> function confirmLink() { if (confirm("Jeste li sigurni da zelite da se povezete na sajt XX?")) { open(xx.html"); } } </script> <title> Ovo je strana koja sadrzi JavaScript </title> </head> <body> <a href="http://www.google.com" onClick="confirmLink();">Klikni na adresu pretrage</a>; </body> </html>
N. Jovanovid, 2009
Metod prompt
Prikupljanje informacija od korisnika Dva parametra: tekst poziva, podrazumevani tekst u polju unosa prompt('Postavite ovde svoje pitanje','podrazumevani string'); Dugme OK, Cancel Metod vrada uneti string, ili NULL ako korisnik nita ne unese ALERT i CONFIRM dijalozi su ved prikazani u prethodnim primerima. Dakle, njihova svrha je dijalog s korisnikom, u smislu da se korisniku u posebnom dijalogu (izvan web stranice) prua neka informacija. Ako se od korisnika (izvan polja formulara na web stranici) eli prihvatiti neki podatak, tada se koristi PROMPT.
N. Jovanovid, 2009
Primer16
<HTML> <HEAD></HEAD> <BODY> <FORM> Primer poziva razliitih vrsta dijaloga:<br> <INPUT TYPE="button" VALUE="Dijalog PROMPT!" ONCLICK="prompt('Ovo je dijalog PROMPT!\nUnesite svoje ime:')"> <INPUT TYPE="button" VALUE="Dijalog ALERT!" ONCLICK="alert('Ovo je dijalog ALERT!')"> <INPUT TYPE="button" VALUE="Dijalog CONFIRM!" ONCLICK="confirm('Ovo je dijalog CONFIRM!\n Nastavak?')"> <BR> </FORM> </BODY> </HTML>
N. Jovanovid, 2009
Primer 17
<html> <head></head> <body> <script type="text/javascript"> var a=prompt("Vase ime ", "ime"); var b=confirm("Zelite li da nastavite "+a); if (b==true) { alert("Dobrodosli "+a); document.write("Dobar Vam dan "+a+ "!"); } else { document.write("Dovidenja "+a); } </script> </body> </html>
N. Jovanovid, 2009
Primer 18
<HTML> <HEAD> <SCRIPT LANGUAGE="JavaScript"> function izracunaj(nazivForme) { if (confirm("Da li zelite racunanje?")) nazivForme.rezultatPolje.value = eval(nazivForme.upisnoPolje.value) else alert("Hvala, dovidjenja do naredne posete!") } </SCRIPT> </HEAD> <BODY> <FORM> Unesite izraz: <INPUT TYPE="text" NAME="upisnoPolje" SIZE=15 > <INPUT TYPE="button" VALUE="Izracunaj" onClick="izracunaj(this.form); return true;"> <BR> Rezultat izraza: <INPUT TYPE="text" NAME="rezultatPolje" SIZE=15 > <BR> </FORM> </BODY> </HTML>
N. Jovanovid, 2009
Zadatak
Napisati JavaScript kod koji na osnovu poluprecnika kruga, koji korisnik unosi pomodu prompt dijaloga, izraunava obim kruga i rezultat prikazuje u alert dijalogu
N. Jovanovid, 2009
Zadatak
Napisati JavaScript koji simulira kalkulator
N. Jovanovid, 2009
U slededem primeru istovremeno se ispisuje tekst Pozdrav i u statusnoj liniju i u polju formulara, a nakon 20 sekundi tekst se uklanja sa oba mesta i prikazuje alert poruka.
N. Jovanovid, 2009
Primer 19
<head> <title>Untitled Document</title> <HTML> <HEAD> <SCRIPT language="JavaScript"> <!-function ispisi(tekst, forma) { window.status = tekst; /* ispis u statusnu liniju */ forma.ispisnoPolje.value = tekst; /* ispis u polje formulara */ setTimeout("obrisi()",20000); /* poziv funkcije "obrisi" nakon 20 sec */ } function obrisi() { window.status=""; /*brie ispis u statusnoj liniji */ mojaForma.ispisnoPolje.value = ""; /*brie ispis u polju forme */ alert("Prolo je 5 sekundi i tekst je obrisan\niz statusne trake i polja forme!"); /* parametar \n odreuje prelaz u novi red! */ } // --> </SCRIPT> </HEAD> <BODY> <FORM NAME="mojaForma"> <INPUT TYPE="button" VALUE="Kliknite za ispis teksta pozdrava u statusnu liniju i polje formulara" onClick="ispisi('Pozdrav!',this.form);return true;"> <INPUT TYPE="text" NAME="ispisnoPolje" SIZE=15 > </FORM> </BODY> </HTML>
N. Jovanovid, 2009
Unutar window.open(...) postoje tri para navodnika unutar kojih se nalaze slededi podaci: unutar prvog para navodnika upisuje se link na .html stranicu koja se eli otvoriti (ili ostavlja prazno za blank); unutar drugog para navodnika upisuje se opcionalni naziv stranice (nije obavezno); unutar tredeg para navodnika upisuju se objekti itaa (browsera) koji se ele ukljuiti (=yes) ili iskljuiti (=no), te definie veliina novog prozora. Evo popisa nekih od tih objekata:
N. Jovanovid, 2009
menubar
toolbar
location directories status scrollbars resizable copyhistory width height
meni u pretraivau (File, Edit, ) funkcijske ikone u navigatoru prozor za upis lokacije meni za direktorijume statusna linija klizai unutar prozora mogudnost promene veliine pradenje kretanja (history) irina prozora (u pikselima) visina prozora (u pikselima)
N. Jovanovid, 2009
Takoe postoji odreeni broj funkcija pomodu kojih se mogu saznati neki podaci ili postaviti odreeni parametar: window.location lokcija dokumenta window.resizeTo(x,y) povedaj prozor do x,y window.moveTo(x,y) premesti prozor na x,y window.resizeBy(x,y) povedaj prozor za x,y piksela setTimeout("funkcija()",50) poziv funkcije nakon 50 ms screen.height visina prozora screen.width irina prozora screen.availHeight preostala moguda visina screen.availWidth preostala moguda irina href="javascript:funkcija()" poziv funkcije kao linka
N. Jovanovid, 2009
Primer 20
<HTML> <HEAD> <TITLE></TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-function otvoriProzor() { window.open("", "", "toolbar=no, location=no, directories=no, status=no, scrollbars=no, width=400, height=100"); return false; } --> </SCRIPT> </HEAD> <BODY> Ovo je primer <A HREF="" onClick = "return otvoriProzor()">otvaranja prozora.</A> </BODY> </HTML>
N. Jovanovid, 2009
U ovom primeru definisana je funkcija otvoriProzor() koja otvara prozor veliine 400x100 piksela, bez toolbara, scrollbara, prozora za lokaciju i statusne trake... Samu funkciju pozivamo sa onClick="return otvoriProzor()" unutar <A HREF=...> (onClick svojstvo se aktivira kada kliknemo miem na dati link).
N. Jovanovid, 2009
Naravno, od samog otvaranja prozora i ne bi imali neke koristi ako u njega ne bi mogli neto i upisati. Podatke upisujemo naredbom:
document.write("...tekst ili html naredbe...");
N. Jovanovid, 2009
Primer 21
<HEAD> <SCRIPT LANGUAGE="JavaScript"> <!-function otvoriProzor() { noviProzor = window.open("", "", "toolbar=no, location=no, directories=no, status=no, width=400, height=100"); text = "Prvi red teksta u novom prozoru.<BR><B>Drugi red teksta.</B><BR>Tredi red..." noviProzor.document.write(text); return false; } --> </SCRIPT> </HEAD> <BODY> Ovo je primer otvaranja <A HREF="" onClick="return otvoriProzor()">prozora</A> i upis podataka u njega. </BODY> </HTML>
N. Jovanovid, 2009
N. Jovanovid, 2009
N. Jovanovid, 2009
Primer 25 - Validacija
<html><head> <script type="text/javascript"> function validacijaPolja(field,alerttext) { with (field) { if (value==null||value=="){ alert(alerttext);return false; } else { return true; } } } function validacija(forma) { validacijaPolja(forma.ime,"morate uneti ime"); validacijaPolja(forma.prezime,"morate uneti prezime"); } </script></head><body> <form> Ime: <input type="text" name="ime" size="30" > Prezime: <input type="text" name="prezime size="30" > <input type="button" value ="Proveri" onClick="validacija(this.form);"> </form></body></html>
N. Jovanovid, 2009
Zadatak
Za stranicu realizovanu u datom primeru izvriti proveru da li su sva tekstualna polja uneta
N. Jovanovid, 2009
Zadatak
Napisati JavaScript stranicu koja prikazuje tekst polje i jedno dugme. Pritiskom na dugme tekst koji predstavlja broj i koji se unosi unutar tekst polja se prihvata i zbir cifara broja se prikazuje korisniku u novom prozoru.
N. Jovanovid, 2009
Zadatak
Napisati kod HTML/JavaScript stranice koja prikazuje tri tekst polja i jedno dugme. U tri tekst polja korisnik unosi datum (dan, mesec i godinu, po jedan podatak u svako tekst polje). Pritiskom na dugme upisati u tekst polja sutranji datum.
N. Jovanovid, 2009