digiTALE
Lt. Junior Grade
- Registriert
- Juli 2004
- Beiträge
- 270
Hallo,
ich habe einen Preisrechner per Javascript geschrieben. Dieser soll aus 3 Dropdownlisten den Preis ermitteln (Anzahl der Personen bis max 4, Anzahl der Übernachtungen und ob ein Haustier mitgebracht wird).
Nun mein Problem, leider hab ich es noch nicht geschafft das dass Script die Werte aus der Dropdownliste ermittelt, welche der Besucher ausgewählt hat. Mit Textfeldern funktioniert es wunderbar, aber ich möchte die Eingabe der Daten beschränken und somit soll das ganze über Dropdownlisten laufen. Der Preis wird sofort aktualisiert.
Wie lese ich den Wert der Dropdownliste aus, damit der Preis beim auswählen gleich aktualisiert wird?
ich habe einen Preisrechner per Javascript geschrieben. Dieser soll aus 3 Dropdownlisten den Preis ermitteln (Anzahl der Personen bis max 4, Anzahl der Übernachtungen und ob ein Haustier mitgebracht wird).
Nun mein Problem, leider hab ich es noch nicht geschafft das dass Script die Werte aus der Dropdownliste ermittelt, welche der Besucher ausgewählt hat. Mit Textfeldern funktioniert es wunderbar, aber ich möchte die Eingabe der Daten beschränken und somit soll das ganze über Dropdownlisten laufen. Der Preis wird sofort aktualisiert.
Wie lese ich den Wert der Dropdownliste aus, damit der Preis beim auswählen gleich aktualisiert wird?
HTML:
<html>
<head>
<title>Test</title>
<style type="text/css">
</style>
<script type="text/javascript">
<!--
function preis() {
var a = 36; // 2 Personen pro Nacht
var b = 6; // fuer jede weitere Person
var c = 23; // Reinigung
var d = 25; // Reinigung Haustier
var e = 1; // Kurtaxe
var f = 0.25; // Gemeindeabgaben
xx = document.form.person.options[person].value;
yy = document.form.nacht.options[nacht].value;
zz = document.form.tiere.options[tiere].value;
if (xx == 1) { pp = a.toFixed(2); }
else if (xx == 2) { pp = a; }
else if (xx == 3) { pp = a + b; }
else if (xx == 4) { pp = a + (b*2); }
else { var xx = 2; var yy = 1; pp = a; }
if (zz == 1) { tt = d; }
else { var zz = 0; tt = 0; }
// Kurtaxe
var kk = (xx*e)*yy;
// Gemeindeabgaben
var gg = (xx*f)*yy;
document.form.gesamt.value = parseFloat((pp*yy)+kk+gg+c).toFixed(2);
}
-->
</script>
</head>
<body>
<form name="form" onkeyup="preis();">
<div class="position">Personen: <div class="option right">
<select name="person">
<option selected="selected" value="2">2</option>
<option value="3">3</option>
</select></div></div>
<div class="clear"></div>
<div class="position">Übernachtungen: <div class="option right">
<select name="nacht">
<option selected="selected" value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select></div></div>
<div class="clear"></div>
<div class="position">Haustiere: <div class="option right"><select name="tiere"><option selected="selected" value="0">Nein</option><option value="1">Ja</option></select></div></div>
<div class="clear"></div>
<div class="position"> </div>
<div class="position"><div class="gesamt right"><input type="text" name="gesamt" value="61.50" class="input_gesamt" readonly="readonly" />*</div><strong>Gesamt in Euro:</strong><br /><small>*Preis kann abweichen</small></div>
<div class="clear"></div>
<p><small>Im Preis enthalten ist: <em>Strom, Wasser, Heizung, Handtücher und Bettwäsche</em></small></p>
</form>
</body>