Autor Zpráva
Teja
Profil
Mám formulář (na rezervaci předplatného kurzu) a v něm výběrové pole a chci, aby když vyberu určitou položku ze seznamu......,aby se mi ve vstupním poli objevila částka peněz, která odpovídá té vybrané položce... Má funkce mi prostě nefunguje =D ...tak bych byla ráda za nějakou radu. Děkuji.
Tady je můj postup:
<td>Délka předplatného:</td>
</tr>
<tr>
<td><select name="delka">
<option name="m1">1. měsíc</option>
<option name="m3">3. měsíce</option>
<option name="m6">6. měsíců</option>
<option name="m12">12. měsíců</option>
</td>
</select>
</tr>
<tr>
<td><input type="button" value="Vypočítat cenu" onClick="vypocet()" ></td>
</tr>
<tr>
<td>Celková cena předplatného:<input name="celkem" disabled size="20px"></td>
</tr>

<tr>

</tr>
</table><br><br>
<input type="button" value="Rezervovat"> 
</form>


<script language="javascript"> 
function vypocet ()  {
if (document.f1.delka.value == "m1");
vypocet = 900;
else if (document.f1.delka.value == "m3"); 
vypocet = 700;
else if (document.f1.delka.value == "m6");
vypocet = 2400;
else if (document.f1.delka.value == "m12");
vypocet = 2700;
document.f1.celkem.value = vypocet;
}
</script>
Chamurappi
Profil
Reaguji na Teju:
<option name="m3">3. měsíce</option>
Tam by mělo být value, nikoliv name. To je asi jediný problém.

A mimochodem, nedělal bych tečku za číslem, pokud to nemá být „třetího měsíce“.
Co si slibuješ od „size="20px"“?
bestik_63
Profil
ahoj, není lepší do value rovnou dávat ty hodnoty co mají být výstupem javascriptu?
Str4wberry
Profil
Šel bych na to jinak.

1) Pro 4 položky nepoužívejte <select>.
2) Proč se ta částka pro každý typ nezobrazí rovnou, ale je potřeba na něco klikat?
bestik_63
Profil
bestik_63, Str4wberry:
souhlas :-)
Teja
Profil
Chamurappi:
Děkuji, děkuji... za cenné rady =), ale i tak mi ta funkce stále nefunguje.. =/


Str4wberry:
a v tom případě bych tu funkci jen hodila do toho výstupního pole na "onSelect"?
Str4wberry
Profil
Asi nerozumím.

Osobně bych se vykašlal na JS a udělal to třeba takto: Živá ukázka
Dan Charousek
Profil
Teja:
Pokud bys setrval u <select>u, šlo by to i takto.
Teja
Profil
Dan Charousek:
děkuji moc =)


Str4wberry:
Taky bych se na JS vykašlala.. ale mám to do školy, do projektu... ale i tak dík =)
Chamurappi
Profil
Reaguji na Dana Charouska:
Já bych psal raději this.form.celkem, aby parentNode nemusel být <form>. Případně tam funguje i samotné celkem, kvůli implicitním with uvnitř atributů.


Reaguji na Teju:
A je povinné použít <select>? Šlo by mít <input type="radio"> a JS, který přenastavuje hodnotu…

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: