Hallo,
Wat ik heb:
Een pagina waar een klant van mij prijzen moet gaan invullen.
Een kamer kan er in meerdere mogelijke combinaties zijn. Daarom heb ik een pulldown menu en afhankelijk de geselecteerde waarde komen er invul velden te voorschijn.
Wanneer er in een invul veld een waarde wordt ingevuld dan wordt de totale kamer prijs berekend.
Waar gaat het fout:
De 'gegenereerde' innerHTML code wordt laten zien op de pagina na veel gekut
.
Echter is het zo dat wanneer ik de innerHTML code bekijk van de eerste, altijd aangemaakte, div, d.m.v. simpel knopje, dat de waardes die met de functie moeten worden meegegeven zijn anders dan de inhoud van de javascript variabele. Onderin de code staat aangegeven waar dit gebeurt.
Het voorbeeld is te zien op http://phpcastle.com/temp/test2.php
Betreffende javascript:
Ik zie dus niet waar het fout gaat. Als iemand enig idee heeft....
- Statix
Wat ik heb:
Een pagina waar een klant van mij prijzen moet gaan invullen.
Een kamer kan er in meerdere mogelijke combinaties zijn. Daarom heb ik een pulldown menu en afhankelijk de geselecteerde waarde komen er invul velden te voorschijn.
Wanneer er in een invul veld een waarde wordt ingevuld dan wordt de totale kamer prijs berekend.
Waar gaat het fout:
De 'gegenereerde' innerHTML code wordt laten zien op de pagina na veel gekut
Echter is het zo dat wanneer ik de innerHTML code bekijk van de eerste, altijd aangemaakte, div, d.m.v. simpel knopje, dat de waardes die met de functie moeten worden meegegeven zijn anders dan de inhoud van de javascript variabele. Onderin de code staat aangegeven waar dit gebeurt.
Het voorbeeld is te zien op http://phpcastle.com/temp/test2.php
Betreffende javascript:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
| <script language="javascript">
var output = "";
var combinatie = "";
function update_combinaties (form,kamer_nummer){
output = "";
combinatie = document.getElementById('combinatie_holder[' + kamer_nummer + ']');
for (i = 1; i <= document.forms[form].elements['aantal_combinaties[' + kamer_nummer + ']'].value; i++){
//Deze werkt wel goed volgens mij omdat ik de innerHTML hiervan kan opvragen...
output += '<div id="combinatie[' + kamer_nummer + '][' + i + ']">';
output += '<table>';
output += '<tr>';
output += '<td>';
output += '<fieldset>';
--> output += '<legend>Combinatie ' + i + ' - Totaal prijs: <input id="totaal[' + kamer_nummer + '][' + i + ']" type="text" /></legend>';
output += '<table>';
output += '<tr>';
output += '<td>Aantal volwassenen:</td>';
output += '<td>';
--> output += '<select name="aantal_volwassenen[' + kamer_nummer + '][' + i + ']" onchange="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");">';
output += '<option value="1">1</option>';
output += '<option value="2" selected>2</option>';
output += '<option value="3">3</option>';
output += '<option value="4">4</option>';
output += '</select>';
output += '</td>';
output += '</tr>';
output += '<tr>';
output += '<td>Prijs volwassene:</td>';
output += '<td>';
--> output += '<input name=\'prijs_volwassenen[' + kamer_nummer + '][' + i + ']\' onkeyup="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");" type="text" />';
output += '</td>';
output += '</tr>';
output += '<tr>';
output += '<td colspan="2">';
output += '<fieldset>';
output += '<legend>';
--> output += '<input name="kind_categorie_een[' + kamer_nummer + '][' + i + ']" onclick="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");" type="checkbox" />Kinder categorie 1';
output += '<select>';
output += '<option>2 tot 6</option>';
output += '<option>2 tot 7</option>';
output += '</select>';
--> output += '<select name="aantal_kind_categorie_een[' + kamer_nummer + '][' + i + ']" onchange="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");">';
output += '<option value="1">1</option>';
output += '<option value="2">2</option>';
output += '<option value="3">3</option>';
output += '<option value="4">4</option>';
output += '</select>';
output += '</legend>';
--> output += '<input name="prijs_kind_categorie_een[' + kamer_nummer + '][' + i + ']" onkeyup="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");" type="text" />';
output += '</fieldset>';
output += '</td>';
output += '</tr>';
output += '<tr>';
output += '<td colspan="2">';
output += '<fieldset>';
output += '<legend>';
--> output += '<input name="kind_categorie_twee[' + kamer_nummer + '][' + i + ']" onclick="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");" type="checkbox" />Kinder categorie 1';
output += '<select>';
output += '<option>2 tot 6</option>';
output += '<option>2 tot 7</option>';
output += '</select>';
--> output += '<select name="aantal_kind_categorie_twee[' + kamer_nummer + '][' + i + ']" onchange="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");">';
output += '<option value="1">1</option>';
output += '<option value="2">2</option>';
output += '<option value="3">3</option>';
output += '<option value="4">4</option>';
output += '</select>';
output += '</legend>';
--> output += '<input name="prijs_kind_categorie_twee[' + kamer_nummer + '][' + i + ']" onkeyup="javascript: bereken_totale_prijs("form","' + kamer_nummer + '","' + i + '");" type="text" />';
output += '</fieldset>';
output += '</td>';
output += '</tr>';
output += '</table>';
output += '</fieldset>';
output += '</td>';
output += '</tr>';
output += '</table>';
output += '</div>';
}
combinatie.innerHTML=output;
}
</script> |
Ik zie dus niet waar het fout gaat. Als iemand enig idee heeft....
- Statix