[JS] Vermutlich einfache Frage (Variable in Elementansprache)
Hi...
mir wollte keine richtige Formulierung für den Titel einfallen. Nen kurzes Problem und wahrscheinlich ist es auch noch leicht. Leider habe ich keine konkrete Idee, wie ich mein Problem löse. Ich möchte quasi folgendes (radikal verkürztes) Skript verwirklichen (so ist es ja falsch):
Falls man nicht draus schlau wird. Ich möchte dass die Variable chk nacheinander die Werte von document.test.position1.selectedIndex, document.test.position2.selectedIndex, ...
annimmt. Bin mir sicher, dass dies irgendwie geht.
Liebe Grüße,
Toast
mir wollte keine richtige Formulierung für den Titel einfallen. Nen kurzes Problem und wahrscheinlich ist es auch noch leicht. Leider habe ich keine konkrete Idee, wie ich mein Problem löse. Ich möchte quasi folgendes (radikal verkürztes) Skript verwirklichen (so ist es ja falsch):
|
|
Javascript-Quelltext |
1 2 3 |
for(var i=0;i<=15;i++) { chk = document.test.position+i.selectedIndex; } |
Falls man nicht draus schlau wird. Ich möchte dass die Variable chk nacheinander die Werte von document.test.position1.selectedIndex, document.test.position2.selectedIndex, ...
annimmt. Bin mir sicher, dass dies irgendwie geht.
Liebe Grüße,
Toast
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Toast« (14. Januar 2012, 22:49)
Ok... das wäre nen ziehmlich dummer Fehler meinerseits gewesen. Leider funktioniert das ganze immer noch nicht. Daher mal ne größere Form der Skripte. Vielleicht steckt ja noch woanders ein Fehler...
Das Javaskript:
Das PHP-Skript:
Was das ganze machen soll? Ich möchte quasi ein Rechnungsformular erstellen, was die Summen der einzelnen Positionen nach Rabattierung etc. während der Eingabe ausrechnet. Leider berechnet das Skript momentan gar nichts und das Feld bleibt leer. Ich tippe ja nach wie vor auf einen Einlesefehler. Aber keine Ahnung
.
Kann mir jemand auch zufällig nen Funktion nennen, mit der ich angeben kann, dass ich immer zwei Nachkommastellen auch ausgegeben haben möchte?
Schon mal Danke soweit und liebe Grüße,
Toast
Das Javaskript:
Spoiler
![]()
Javascript-Quelltext
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <script type="text/javascript"> function zwischensumme() { var kos=0; var stck=0; var rab=0; var chk=0; for(var i=0;i<=9;i++) { kos = document.getElementById('kos'+i).value; stck = document.getElementById('stck'+i).value; rab = document.getElementById('rab'+i).value; chk = document.test.position+i+.selectedIndex; if(chk!=0){ document.getElementById('zwi'+i).value = Math.round(kos*stck*(100-rab))/100; } else{ document.getElementById('zwi'+i).value = 0; } } } </script>
Das PHP-Skript:
Spoiler
![]()
PHP-Quelltext
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<form name="test" action=""> <?php for($i=0;$i<=9;$i++){ echo'<p>'.chr(10); echo'<label>Position '.$i.':</label>'.chr(10); echo'<select name="position'.$i.'" size="1" onClick="zwischensumme()"" onKeyUp="zwischensumme()">'.chr(10); echo' <option>--- leer ---</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo' <option>Position 1</option>'.chr(10); echo'</select>'.chr(10); echo'<label>Kosten:</label><input type="text" maxlength="6" id="kos'.$i.'" onKeyUp="zwischensumme()"><label>€</label>'.chr(10); echo'<label>Anzahl:</label><input type="text" maxlength="2" id="stck'.$i.'" onKeyUp="zwischensumme()"><label>Stck.</label>'.chr(10); echo'<label>Rabatt:</label><input type="text" maxlength="6" id="rab'.$i.'" onKeyUp="zwischensumme()"><label>%</label>'.chr(10); echo'<label>Wert:</label><input type="text" maxlength="6" id="zwi'.$i.'" readonly><label>€</label>'.chr(10); echo'</p>'.chr(10); ?> </form>
Was das ganze machen soll? Ich möchte quasi ein Rechnungsformular erstellen, was die Summen der einzelnen Positionen nach Rabattierung etc. während der Eingabe ausrechnet. Leider berechnet das Skript momentan gar nichts und das Feld bleibt leer. Ich tippe ja nach wie vor auf einen Einlesefehler. Aber keine Ahnung
.Kann mir jemand auch zufällig nen Funktion nennen, mit der ich angeben kann, dass ich immer zwei Nachkommastellen auch ausgegeben haben möchte?
Schon mal Danke soweit und liebe Grüße,
Toast
RE: [JS] Vermutlich einfache Frage (Variable in Elementansprache)
Diese Syntax ist natürlich Quatsch wie du schon selber vermutet hast.
![]()
Javascript-Quelltext
1 chk = document.test.position+i.selectedIndex;
Eine Möglichkeit, dein Problem zu lösen, falls du keine weiteren Selects auf der Seite hast, wäre folgende:
Fasse deine Selects in ein Array zusammen
|
|
Javascript-Quelltext |
1 |
arrSelects = document.getElementsByTagName("select"); |
und greife sie in der For-Schleife einzeln ab.
|
|
Javascript-Quelltext |
1 |
chk = arrSelects[i].selectedIndex;
|
Ähnliche Themen
-
(X)HTML & CSS & DHTML & Javascript »-
Keine Zahlen als ID Bezeichner?
(16. März 2011, 09:49)
-
PHP »-
$_POST / $_REQUEST manipulieren
(20. Juni 2008, 10:16)
-
PHP »-
Slash vor Apostroph (\')
(14. Dezember 2004, 14:59)
-
PHP »-
Problem bei der Bestätigungsmail an Absender ...
(7. Oktober 2004, 08:33)
-
PHP »-
meta titel aus text generieren?
(18. Mai 2004, 15:01)


