URL: https://www.overclockers.at/coding-stuff/help_js_formular_rechnung_196171/page_1 - zur Vollversion wechseln!
Hi!
Ich stehe vor einem Problem.
Ich habe ein Formular das so ähnlich aussieht:
Wenn jetzt auf der linken Seite Kurse angehakt werden, sollte unten in einer Summenzeile der Gesamtbetrag ausgerechnet werden.
Wie kann ich das Lösen?
tia
om
Ich hab keine Ahnung von clientseitigem Web-Development, aber so schwer ist das nicht... Wenn du den Preis als numerisches Skalar irgendwie mit der Checkbox assoziieren kannst ("value"-Property bietet sich z. B. an) iterierst du einfach ueber alle Elemente der <form>, in deren Kontext die Boxen stehen, und addierst den value der Checkbox dann zur bisher ermittelten Summe ebendieser, wenn die gerade auszuwertende Box angehakt ist. Den Wert fuellst du per JavaScript in ein anderes Element deiner Wahl, fertig; die entsprechende Funktion fuehrst du bei jedem onClick (oder vielleicht gibt es schon passendere JavaScript-Eventhandler fuer Checkboxen und solche Situationen) aus.
Machst du nicht sowas aehnliches (wie Web-Development) beruflich? 
Hauptsächlich Serverseitig und dieses Java Script kotzt mich an. 
Werd mich mal dahinterhängen auf Trial-Error-Art.
Code: PHP<html> <head> <title>Blahfasl</title> <script language="javascript"> function togglePrice(sender, value) { var sumElem = document.getElementById("sum"); var sumVal = (+sumElem.innerHTML); if (sender.checked) { sumElem.innerHTML = sumVal + value; } else { sumElem.innerHTML = sumVal - value; } } </script> </head> <body> <form name="form1" method="post" action=""> <table> <tr> <td><input type="checkbox" name="chk1" id="chk1" onClick="togglePrice(this, 10.50)">Kurs1</td> <td>10.50</td> </tr> <tr> <td><input type="checkbox" name="chk2" id="chk2" onClick="togglePrice(this, 20.00)">Kurs2</td> <td>20.00</td> </tr> <tr> <td> </td> <td id="sum">0</td> </tr> </table> </form> </body> </html>

Schöner gehts net, danke 
*aufwärm*
Selbes Projekt, ähnliches Problem: Ich brauche eine kleine Lösung in JavaScript, quasi eine Form-Validation. Hab per Google nix gefunden.
Es werden nach wie vor die einzelnen Zeilen aus der DB in die Liste geladen und mit Checkboxen versehen.
Der User _muss mindestens eine_ Checkbox anhaken. Wenn er das nicht macht, soll ne Msgbox springen.
Der Code für die Checkbox ist jetzt folgender:
Frage: Wie soll ich das anstellen, da ich ja die Checkbox als Array definiert habe?Code: PHP<input name="checkbox[]" value="'.$row['id'].'" type="checkbox" onClick="togglePrice(this, '.$row['preis'].')"/>
Wenn php installiert ist, geht das ziemlich fix in php auch.
JS hab ich Nüsse Ahnung, sry 
http://www.galileocomputing.de/open...c81536d5f7538fb
Unter 9.1.5 wird durch ein Array iteriert und abgefragt ob etwas ausgewählt íst
wenn ich mich recht erinnere sind doch checkboxen mit dem selben namen immer in einem array?
Code: PHPvar data = document.getElementsByName('checkbox'); var cbChecked= false; for(i=0; i<data.length; i++) { if(data[i].checked) { cbChecked = true; // oder gleich rausspringen } } if(cbChecked) { form.submit(); // oder was auch immer } else { alert("Bitte irgendwas auswählen"); }
Hey, die Lösung von Sensei sagt mir zu, danke!
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026