» »

java script spremenljivka iz spustnega seznama

java script spremenljivka iz spustnega seznama

mepa ::

Napišem na primer preprosti skript:


script language="javascript"
var leto1
var mesec1
var dan1
var datum1=new Date(leto1,mesec1, dan1)  
var leto2
var mesec2
var dan2
var datum2=new Date(leto2,mesec2, dan2)  
var razlika_datumov = (datum2 - datum1)/ 86400000
var a=razlika_datumov

document.write(a)

/script



Ta skript izračuna razliko datumov v celih dnevih (1.2.2009 - 1.1.2009 = 31)

Prosim da bi na preimer zgornje spremenjivke  (leto1, mesec1, dan1, leto2, mesec2, dan2) na spletni strani določal s spisnega seznama.

Pripravil sem en sezmam zadeva ne dela. Nevem kaj je narobe. Manjka sigurno neka funkcija, ki je nevem napisati.

Prosim za pomoč

select name="mesec1" id="mesec1" size="1" onchange="______onclick('mesec1')
       option value="0" selectedJanuar/option
       option value="1" >Februar/option
       option value="2" >Marec/option
       option value="3" >April/option
       option value="4" >Maj/option
       option value="5" >Junij/option
       option value="6" >Julij/option
       option value="7" >Avgust/option
       option value="8" >September/option
       option value="9" >Oktober/option
       option value="10" >November/option
       option value="11" >December/option
    /select

mepa
  • spremenil: Mavrik ()

dfajt ::

Evo, jaz sem načaral neko funkcijo:

<html>

<head>

<script type="text/javascript">
<!-- izračuna datumsko razliko med dvema datumoma -->

function datum()
{

   dan1 = document.getElementById('dan1')
   dan1 = dan1.options[dan1.selectedIndex].value
   mesec1 = document.getElementById('mesec1')
   mesec1 = mesec1.options[mesec1.selectedIndex].value
   leto1 = document.getElementById('leto1')
   leto1 = leto1.options[leto1.selectedIndex].value
   dan2 = document.getElementById('dan2')
   dan2 = dan2.options[dan2.selectedIndex].value
   mesec2 = document.getElementById('mesec2')
   mesec2 = mesec2.options[mesec2.selectedIndex].value
   leto2 = document.getElementById('leto2')
   leto2 = leto2.options[leto2.selectedIndex].value

   datum1 = new Date(leto1, mesec1, dan1)
   datum2 = new Date(leto2, mesec2, dan2)
   
   alert((datum2 - datum1)/ 86400000)
}

</head>


<body>
<select name="dan1" id="dan1" onChange="javascript:datum()">
   <option value="1">1</option">
   <option value="2">2</option">
   <option value="3">3</option">
</select>
<select name="mesec1" id="mesec1" size="1" onchange="javascript:datum()" onclick="">
   <option selected value="1">Januar</option>
   <option value="2">Februar</option>
   <option value="3">Marec</option>
</select>
<select name="leto1" id="leto1" onchange="javascript:datum()">
  <option value="2008">2008</option>
  <option selected value="2009">2009</option>
  <option value="2010">2010</option>
</select>
<br>

<select name="dan2" id="dan2" onChange="javascript:datum()">
   <option value="1">1</option">
   <option value="2">2</option">
   <option value="3">3</option">
</select>
<select name="mesec2" id="mesec2" size="1" onchange="javascript:datum()" onclick="">
   <option selected value="1">Januar</option>
   <option value="2">Februar</option>
   <option value="3">Marec</option>
</select>
<select name="leto2" id="leto2" onchange="javascript:datum()">
  <option value="2008">2008</option>
  <option selected value="2009">2009</option>
  <option value="2010">2010</option>
</select>

</body>
</html>

Zgodovina sprememb…

  • spremenil: Mavrik ()

a-ptuj ::

Pozdravljen!

Hvala za funkcijo. Hvala tudi za tako hitro pomoč. Sem takoj probal funkcijo pa je noter še neka napakica, ker še vedno noče izračunati in izpisati razlike datumov v številu dni (npr. 1.2.2009 - 1.1.2009 = 31 dni). Sam spusni seznam pa dela OK.

Dodal sem "/script" v 29. vrstici. Nato pa sem tuhtal še dobre 3 ure in mi ne pa mi še vedno ne gre.

Prosim še za dodatno pomoč. Hvala.

dfajt ::

Malce sem na hitro napisal, pa nisem kaj dosti preverjal - bilo je mišljeno kot primer...
1. pri mesecih je potrebno januar začeti z nič (value="0"), februar je nato 1...
2. izračun datuma je potrebno zaokrožiti: alert(Math.ceil((datum2.getTime() - datum1.getTime())/ 86400000))

Je pa potrebno seveda upoštevati še dejstvo, da nimajo vsi meseci enakega števila dni, se pravi je potrebno spustni seznam dni dinamično prilagajati glede na izbrani mesec in leto, saj lahko v nasprotnem primeru (ko je izbran npr. 31. februar) dobimo popolnoma napačen rezultat!

a-ptuj ::

Pozdravljen!

Hvala za pomoč. Sedaj dela OK. Hvala.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Potrebujem javascript pomoč

Oddelek: Programiranje
81219 (969) no1pheeew
»

[PHP/JavaScript] tic tac toe

Oddelek: Programiranje
171692 (1425) illion
»

Javascript - izračun razlike v datumih

Oddelek: Programiranje
81927 (1782) kogledom
»

Definiranje spremenjivke - javascript

Oddelek: Programiranje
51221 (1144) a-ptuj
»

Označevanje datumov...

Oddelek: Izdelava spletišč
9841 (744) markz

Več podobnih tem