Pogledajte određenu poruku
Staro 09. 04. 2013.   #1
stanke
član
Certified
 
Datum učlanjenja: 06.09.2012
Poruke: 64
Hvala: 0
342 "Hvala" u 10 poruka
stanke is on a distinguished roadstanke is on a distinguished roadstanke is on a distinguished roadstanke is on a distinguished road
Default Racunanje razlike dana od odabira odredjenih datuma

Radim kalendar za racunanje razlike dana od odabira odredjenjih datuma, kalendar je dropdown lista , svaka lista je posebam dan, mesec, godina, imam dva kalendara od kojih se svaki sastoji od tri liste, odabirom odredjenih datuma u polju text se prikazuje kolika je razlika izmedju odabranih dana, meseca, godina, sve radi ok al imam mali problem ne znam kako da definisem za dane da mi se pojavljuje tacni dani za odredjeni mesec, kod mene je definisano da svaki dan bez obzira na mesec ima 31 dan, kako da definisem da januar ima 31, februar 28 ili 29 kad je prestupna godina, mart 31 dan, april 30....
Ovo je kod:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Razlika Dana</title>
<script language="javascript" type="text/javascript">
function opcija(pocetniBroj, zavrsniBroj)
{
var brojac;
for(brojac = pocetniBroj; brojac <= zavrsniBroj; brojac++)
{
document.write("<option value=" + brojac + ">" + brojac);
}
}

function mesecOpcije()
{
var mesec;
var brojacMeseca;
var datum = new Date(1);
for(brojacMeseca = 0; brojacMeseca < 12; brojacMeseca++)
{
datum.setMonth(brojacMeseca);
mesec= datum.toString();
mesec = mesec.substr(4,3);
document.write("<option value=" + mesec + ">" + mesec);

}
}

function pozoviRazliciteDatume()
{
var mojaForma= document.forma;
var prviDan = mojaForma.prviDan.options[mojaForma.prviDan.selectedIndex].value;
var drugiDan = mojaForma.drugiDan.options[mojaForma.drugiDan.selectedIndex].value;

var prviMesec = mojaForma.prviMesec.options[mojaForma.prviMesec.selectedIndex].value;
var dugiMesec = mojaForma.drugiMesec.options[mojaForma.drugiMesec.selectedIndex].value;

var prvaGodina = mojaForma.prvaGodina.options[mojaForma.prvaGodina.selectedIndex].value;
var drugaGodina = mojaForma.drugaGodina.options[mojaForma.drugaGodina.selectedIndex].value;

var prviDatum = new Date(prviDan + " " + prviMesec + " " + prvaGodina);
var drugiDatum = new Date(drugiDan + " " + dugiMesec + " " + drugaGodina);

var razlikaDana = (drugiDatum.valueOf() - prviDatum.valueOf());
razlikaDana = Math.floor(Math.abs((((razlikaDana / 1000) /60) / 60) /24));
mojaForma.txtDani.value = razlikaDana;
return true;
}

function pocetak()
{
var forma = document.forma;
var sadasnjiDatum = new Date();
forma.prviDan.options[sadasnjiDatum.getDate() - 1].selected = true;
forma.drugiDan.options[sadasnjiDatum.getDate() - 1].selected = true;
forma.prviMesec.options[sadasnjiDatum.getMonth()].selected = true;
forma.drugiMesec.options[sadasnjiDatum.getMonth()].selected = true;
forma.prvaGodina.options[sadasnjiDatum.getFullYear() - 1970].selected = true;
forma.drugaGodina.options[sadasnjiDatum.getFullYear() - 1970].selected = true;
}


</script>
</head>

<body onLoad="return pocetak()">
<form name="forma">
<p>Prvi Datum
<br>
<select name="prviDan" size="1" onChange="return pozoviRazliciteDatume()">
<script>
opcija(1,31)

</script>
</select>
<select name="prviMesec" size="1" onChange="return pozoviRazliciteDatume()">
<script>
mesecOpcije();
</script>
</select>

<select name="prvaGodina" size="1" onChange="return pozoviRazliciteDatume()">
<script>
opcija(1970, 2020);
</script>
</select>
<br><br>
<select name="drugiDan" size="1" onChange="return pozoviRazliciteDatume()">
<script>
opcija(1,31);
</script>
</select>
<select name="drugiMesec" size="1" onChange="return pozoviRazliciteDatume()">
<script>
mesecOpcije();
</script>
</select>
<select name="drugaGodina" size="1" onChange="return pozoviRazliciteDatume()">
<script>
opcija(1970, 2020);
</script>
</select>
</p>
Razlika u danima
<input type="text" name="txtDani" value="0" readonly>
<br>
</form>

</body>
</html>
stanke je offline   Odgovorite uz citat