ik heb de volgende code:
het oproepen van de functie gaat goed. de waardes krijg ik ook netjes. het probleem is echter dat ik eerst undefined krijg, en dan een string ipv een float. (alle invoervelden bevatten numerieke waarden).
ik heb dit ook geprobeerd met VBscript, maar toen lukte het me niet om de waarden uit de velden te halen.
gebruik ik parseFloat(); dan geeft ie een NaN, ook als ik alleen maar numerieke waarden invul.
wat doe ik precies fout?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <script type="text/javascript" language="JavaScript">
function SchrijfTotaal(Dag) {
var totaal;
//totaal = 0;
totaal += document.form1.elements[Dag + "-Reizen_100"].value;
totaal += document.form1.elements[Dag + "-Reizen_125"].value;
totaal += document.form1.elements[Dag + "-Reizen_160"].value;
totaal += document.form1.elements[Dag + "-CoNet_100"].value;
totaal += document.form1.elements[Dag + "-CoNet_125"].value;
totaal += document.form1.elements[Dag + "-CoNet_160"].value;
totaal += document.form1.elements[Dag + "-Klant_100"].value;
totaal += document.form1.elements[Dag + "-Klant_125"].value;
totaal += document.form1.elements[Dag + "-Klant_160"].value;
//document.[Dag + "-totaal"].innerText = totaal;
alert(totaal);
}
</script> |
het oproepen van de functie gaat goed. de waardes krijg ik ook netjes. het probleem is echter dat ik eerst undefined krijg, en dan een string ipv een float. (alle invoervelden bevatten numerieke waarden).
ik heb dit ook geprobeerd met VBscript, maar toen lukte het me niet om de waarden uit de velden te halen.
gebruik ik parseFloat(); dan geeft ie een NaN, ook als ik alleen maar numerieke waarden invul.
wat doe ik precies fout?
edit:
dit is de oplossing geworden:
dit is de oplossing geworden:
JavaScript:
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
| <script type="text/javascript" language="JavaScript"> function SchrijfTotaal(Dag) { var totaal; var temp; totaal = 0; /* horizontale kolommen */ temp = parseFloat(document.form1.elements[Dag + "-Reizen_100"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-Reizen_125"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-Reizen_160"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-CoNet_100"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-CoNet_125"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-CoNet_160"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-Klant_100"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-Klant_125"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements[Dag + "-Klant_160"].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; totaal = totaal.toString(); document.getElementById(Dag + '-totaal').innerText = totaal.replace(".", ","); totaal = 0; } function horizontaal(Column) { var totaal; var temp; totaal = 0; /* vertikale kolommen totalen */ temp = parseFloat(document.form1.elements["Maandag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements["Dinsdag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements["Woensdag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements["Donderdag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements["Vrijdag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements["Zaterdag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; temp = parseFloat(document.form1.elements["Zondag-" + Column].value.replace(",", ".")); if (!isNaN(temp)) totaal += temp; totaal = totaal.toString(); document.getElementById(Column).innerText = totaal.replace(".", ","); } </script> |
[ Voor 54% gewijzigd door BasSpruit op 13-01-2004 09:17 ]