[Script] Zur Berechnung von Grundpreisen

Dieses Thema im Forum "Webentwicklung" wurde erstellt von destroyer, 16. Juli 2008 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 16. Juli 2008
    Zur Berechnung von Grundpreisen

    Moin RRler,

    vielleicht könnt ihr mir ja weiter helfen.
    Ich bräuchte am besten ein Javascript, der den Grundpreis in 100 ml berechnet.
    Ich habe ja zwei variablen.
    var a = Preis
    var b = ml
    die sind schon von anfang an angegeben.
    Jetzt muss noch der Grundpreis berechnet werden.
    a/b*100 = c

    Ich versuch und versuch. Aber geht nicht. Wie soll sich Javascript die Zahlen aus der Html ziehen??
     
  2. 16. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    1) gehört nach webtechnik
    2) getElementById("---").innerHtml kann hilfreich sein, kommt aber
    3) darauf an, wie dein bisheriger Code aussieht, deshalb
    4) am besten code hier reinposten (der relevante teil zumindest)
     
  3. 16. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    danke schon mal für die hilfe so sieht mein code aus:
    S

    <a id="Absatz"></a>
    <script type="text/javascript">
    var a = document.createTextNode("$#Text.Artikelpreis#$");
    var b = document.createTextNode("$#Text.Gewicht#$");
    var c = a/b*100;
    document.getElementById("Absatz").appendChild(++c);
    </script>

    Ich erwähn mal, dass ich JTL-Wawi mit eazyauction hier benutze.
    Der hollt sich halt zwei Werte aus der DB raus Preis $#Text.Artikelpreis#$, und Gewicht also ml $#Text.Artikelpreis#$. Diese werden generieren und JavaScript soll damit rechnen.
    Aber irgendwie klappt alles nicht so ganz.
     
  4. 16. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    hi,
    also was "JTL-Wawi mit eazyauction" ist hab ich keine ahnung.

    das Problem bei deinem Script könnte sein, dass du in a und b nicht wirklich die werte reinspeicherst sondern eine art "ressource-handler" für die Text-Nodes. du kannst dir dazu also mal das hier angucken: http://de.selfhtml.org/javascript/objekte/node.htm#data.

    modifiziert sollte das ganze dann so funktionieren:
    HTML:
    <div id="Absatz"></div>
    
    <script type="text/javascript">
    var a = document.createTextNode("$#Text.Artikelpreis#$");
    var b = document.createTextNode("$#Text.Gewicht#$");
    
    var c = (a.data / b.data ) * 100;
    
    document.getElementById("Absatz").innerHTML = c;
    </script>
    
    Warum willst du eigendlich zu c nochmal 1 dazuaddieren? Kannst du ja wieder hin machen wenn dus brauchst.

    greez myth
     
  5. 16. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    wie schwachsinnig is das denn bitte textknoten zu erstellen wenn man eh nur die value braucht?
    textknoten sind sowas: <span> ich bin ein textknoten </span>

    HTML:
    <div id="Absatz"></div> 
    <script type="text/javascript"> 
    /* <![CDATA[ */
     var a = parseInt("$#Text.Artikelpreis#$"); 
     var b = parseInt("$#Text.Gewicht#$") || 1; 
     var c = new String((a / b) * 100); 
     document.getElementById("Absatz").firstChild.nodeValue = c; 
    /* ]]> */
    </script>
     
  6. 17. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    Boah super Leute,

    habe mir alles zurecht geschnippselt. Funtz auch so weit ^^

    Nun ist aber noch das Problem, das er nach dem Komma, also die Cents nicht mit einbezieht.
    Wie könnte man dieses Problem jetzt ab geschicktesten lösen??

    JavaScript ist leider einer meiner schwächen ....

    Ich bin echt dankbar für eure Hilfe!!!!

    Ps.: mit der 1 dazu war ein Fehler ...
     
  7. 17. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    statt parseInt die funktion parseFloat, aaaber in deinem string muss! ein punkt (als komma) stehen.

    sollte in der db aber preise mit komma stehen, dann musst du vorher replace() auf den string anwenden:
    Code:
    <div id="Absatz"></div>
     <script type="text/javascript">
     /* <![CDATA[ */
     var articlePoint = "$#Text.Artikelpreis#$";
     articlePoint = articlePoint.replace(",",".");
     var articleWeight = "$#Text.Gewicht#$";
     articleWeight = articleWeight.replace(",",".");
     var a = parseFloat(articlePoint);
     var b = parseFloat(articleWeight) || 1;
     var c = new String((a / b) * 100);
     document.getElementById("Absatz").firstChild.nodeValue = c;
     /* ]]> */
     </script>
    
    ungetestet und so ziemlich das erste was ich mit javascript machen

    //geändert von murdoc: articlePoint = articlePoint.replace(",",".); <- da fehlte ein " am ende
     
  8. 17. Juli 2008
    AW: Zur Berechnung von Grundpreisen

    So nach vielen Versuchen habe ich mir diesen Code zusammen gebastelt und der Funktioniert einwandfrei ^^

    Vielen Dank für eure Mühe Jungs...
    Ich versteh nicht wieso das mit dem parsInt und parseFloat nicht geht ... beides muss weg dann zieht er sich die Werte aus der SQL DB und fügt die ein, danach kann er die Kommata ersetzen.

    HTML:
    <a id="Absatz"></a>
    <script type="text/javascript">
     var a = ("$#Text.Artikelpreis#$");
     a = a.replace(/,/,".");
     var b = ("$#Text.Gewicht#$");
     b = b.replace(/,/,".");
     var c = new String((a / b) * 100); 
    document.getElementById("Absatz").innerHTML = c;
    </script>
    Code:
    <a id="Absatz"></a> ein a tag reicht aus ^^
    :::Und so sieht das am Ende aus:::

    Code:
    Inhalt: 40,00ml - Eau de Cologne -
    Preis 37,90€
    Grundpreis pro 100ml: 94.75€ inkl. 19% MwSt.
    
    VIELEN DANK
     
  9. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.