Javascript Lösung gesucht

  • Javascript Lösung gesucht

    Hallo liebes Team,

    habe da eine Aufgabenstellung, die ein Javascriptexperte mit Sicherheit schnell lösen würde, ich kriege das aber nicht so schnell hin, vielleicht kann mir ja der eine oder andere dabei helfen, also folgendes:

    Ich habe ein Tabelle die aus der Datenbank kommt, sagen wir mal so 5 Zeilen, in jeder Zeile befinden sich folgende Datensätze von links nach rechts: Obst | Aktueller Preis | Stück | Rabatt | Ergebnis -> ErgebnisLink <-

    So, man muss sich das jetzt so vorstellen:

    In jeder der Zeilen befinden sich Felder (z.B. Aktueller Preis) die ich jeweils mit der DatensatzID indiziert habe, also z.B. so, preis[]. Genauso auch das Stückfeld und auch das Rabattfeld sowie das Ergebnisfeld, und zwar anhand des jeweiligen ID Tags z.B. so

    Quellcode

    1. <input name="preis" type="text" class="fld40r" id="preis[<?php echo $id;?>]" value="<?php echo $preis;?>" />
    2. <input name="stueck" type="text" class="fld40r" id="stueck[<?php echo $id;?>]" value="<?php echo $stueck;?>" />
    3. <input name="rabatt" type="text" class="fld40r" id="rabatt[<?php echo $id;?>]" value="<?php echo $rabatt;?>" />
    4. <input name="ergebnis" type="text" class="fld40r" id="ergebnis[<?php echo $id;?>]" value="" />
    5. <td width="20" title="Preis prüfen!"><div align="center"><img src="../buntes/button_index.png" width="11" height="13" /></div></td>


    Folgendes soll also nun passieren:

    Wie man sehen kann habe ich in jeder Zeile auch noch ein kleines Bild eingefügt, in den Feldern Preis und Rabatt steht ja schon was drin z.B. 16,25 und 0,5, wenn ich nun in das Feld Stück z.B. 120 eintrage und auf das Bild klicke, dann soll in das Ergebnisfeld halt das Ergebnis erscheinen, also das Ergebnis von z.B. 120 * 16.50 - 0,5%.

    Soweit erstmal die Aufgabestellung

    Wäre echt toll, wenn das jemand mit mir erarbeiten könnte

    MfG

    kingluui
  • Warum willst du das mit JavaScript machen? Das kannst du ganz unproblematisch mit PHP lösen.
    Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert, der letzte Netzknoten kommerzialisiert, die letzte Newsgroup moderiert wird, werdet Ihr merken, dass man mit Geld allein nicht programmieren kann.
  • Hallo JFoX,

    weil ich die Lösung der Rechnung gerne erfahren möchte ohne die Seite neu laden zu müssen.

    Ich weiss die Stückzahl ja leider nicht vorher, die will ich ja in das Feld Stück eingeben und dann nur für eine entsprechende Zeile errechnen lassen.
    Mit getElementsById sollte sowas doch sicherlich gut zu machen sein, ich weiss leider nicht wie so auf die schnelle, mit PHP könnte ich das auf die schnelle selbst lösen.

    MfG

    kingluui
  • here you are

    Quellcode

    1. <html>
    2. <head>
    3. <script type="text/javascript">
    4. function calc(id) {
    5. var values = ["preis","stueck","rabatt"];
    6. var preis = eval(document.getElementById("preis["+id+"]").value);
    7. var stueck = eval(document.getElementById("stueck["+id+"]").value);
    8. var rabatt = eval(document.getElementById("rabatt["+id+"]").value);
    9. var sum = (preis*stueck);
    10. sum -= (sum/100)*rabatt;
    11. document.getElementById("ergebnis["+id+"]").value = sum;
    12. }
    13. </script>
    14. </head>
    15. <body>
    16. <input name="preis" type="text" class="fld40r" id="preis[0]" value="10" />
    17. <input name="stueck" type="text" class="fld40r" id="stueck[0]" value="20" />
    18. <input name="rabatt" type="text" class="fld40r" id="rabatt[0]" value="30" />
    19. <input name="ergebnis" type="text" class="fld40r" id="ergebnis[0]" value="" />
    20. <img src="../buntes/button_index.png" width="11" height="13" onclick="calc(0)" />
    21. </body>
    22. </html>
    Alles anzeigen
  • WaO d0nUt,

    Dich schickt mal wieder der Himmel, das ist genau das richtige, aber auch danke an JFoX - ich komme halt hin und wieder mal mit solchen na ja vielleicht einfachen Sachen hier rein, und ich verspreche hoch und heilig, ich werde mir noch in diesem Jahr mehr Javascript reinschaufeln, denn ich programmiere meist für die Adminseite, und da kann ich mir aussuchen mit welchem Browser die arbeiten sollen, hehe. Danke

    MfG

    kingluui