Autor Zpráva
kubiczech
Profil
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <title></title>
  </head>
  <body>
  <script type="text/javascript" language="javascript">
     function splatka() 
     {
        var vyse = document.getElementById('vyseUveru').value;
        var delka = document.getElementById('delkaUveru').value;
        var splatka = 0;
        
        switch (vyse)
        {
           default: splatka = 0; break;
           case 50000:
              switch (delka)
              {
                 default: splatka = 0; break;
                 case 12: splatka = "12 x 50"; break;
                 case 24: splatka = "24 x 50"; break;
              }
           case 60000:
              switch (delka)
              {
                 default: splatka = 0; break;
                 case 12: alert('reaguje'); break;
                 case 24: splatka = "24 x 60"; break;
              }
        }
        return splatka;
     }
  </script>
  <form id="hypoteka">
  <select name="vyseUveru" id="vyseUveru" onChange="document.hypoteka.splatka.value=splatka()">
  <option value="50000">50000</option>
  <option value="60000">60000</option>
  </select>
  <br />
  <select name="delkaUveru" id="delkaUveru" onChange="document.hypoteka.splatka.value=splatka()">
  <option value="12">12</option>
  <option value="24">24</option>
  </select>
  <br />
  <input type="text" name="splatka" id="splatka" >
  </form>
  </body>
</html>


toto je ukázkový skript... potřebuji, aby se mi porovnala data v vyseUveru s delkaUveru a dle toho se vybrala pozadovana vystupni hodnota...

mam to takhle resene na jinych formularich, ale v tomto mi to ne a ne chodit... pomuze nekdo? nic spatneho tam nevidim, znalec javascriptu take nejsem...

Error Console pise: Undefined value on lines 38 a 43, tedy vzdy u prvniho <option value
kubiczech
Profil
pri zmene vsech volani na getElementById('xxx') mi error console napise:

Object [object HTMLInputElement] (result of expression splatka) does not allow calls. line 37 & 42

tedy linky s <select>
Joker
Profil
Klasika- vybíráte v objektovém modelu prvek, který ještě neexistuje.
Chamurappi
Profil
Reaguji na Jokera:
Neřekl bych.

Reaguji na kubiczecha:
Kdybys dal odkaz na chybující stránku, měl bych větší chuť hledat problém.
kubiczech
Profil
Joker
heh... diky moc, ale moudry z toho moc nejsem...

ale jestli to chapu, tak kod je postaven dobre? nebo ne? cim dosahnu toho, ze to bude fungovat? nejaka zmena? napad? namet na precteni? jsem z toho mimo a na googlu jsem z toho taky mimo :(
kubiczech
Profil
je mozne, ze zmenou nazvu funkce jsem to rozchodil? pac jak tak koukam, tak mi to tu jde, ale jenom se zmenenym nazvem funkce :-D

zahada? nahoda? blbec? nebo je to i tak spatne?
Chamurappi
Profil
Reaguji na kubiczecha:
Zkus přidat formuláři name="hypoteka", nebo zaměřovat ho pomocí document.getElementById("hypoteka").

A ano, nazývat úplně všechno „splatka“ také není moc dobrý nápad.
kubiczech
Profil
Chamurappi
Diky, diky... neco uz funguje, ale porad nefunguje dobre ten prvni switch...

btw. volani na formular jako takovy nikde nemam... name jsem priradil, ale porad mi to dela chybicky u ty value=50000 ... jako by ji nemohl precist... a to jsem to nakonec vzal i tak, ze jsem celej <script> posunul az pred </body>
Chamurappi
Profil
Reaguji na kubiczecha:
Na konci case 50000 v prvním switchi nemáš break, takže se vykoná i následující case.
kubiczech
Profil
Chamurappi

oooo... jakoby to v PHP bylo jinak :-D diky moc, mezopotamsky vladce :)

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: