1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Preisanzeige mittels Javascript

Discussion in 'Web-Know-how für die Homepage' started by chavz, Feb 3, 2010.

Thread Status:
Not open for further replies.
  1. chavz

    chavz Byte

    Hallo zusammen,

    da ich mich gerade selbstständig gemacht habe im Bereich Handyverkauf mit und ohne Handyvertrag und über recht wenig Kapital verfüge, muss ich meine Webseite selber machen. Dazu brauche ich an einer Stelle eure Hilfe:

    Nachdem das Handy gewählt wurde, soll man einen dazugehörigen Tarif wählen. Dieser Tarif ist beliebig mit anderen Tarifen kombinierbar über Checkboxen. Wie realsiere ich eine Preisanzeige mittels Javascript, sodass der Kunde transparent weiß, was er genau monatlich zahlen soll?

    ----------------
    Beispiel:

    [x] Produkt A (5,00 EUR monatlich)
    [ ] Produkt B (10,00 EUR monatlich)
    [x] Produkt C (5,00 EUR monatlich)

    Sie zahlen monatlich: 10,00 Euro.

    ----------------

    Danke :)

    Viele Grüße
    chavz
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Ausgelöst wird das Ganze über ein onclick auf die zuständige Checkbox. Dieses sollte eine zentrale Funktion aufrufen, welche alle zugehörigen Checkboxen durchgeht, ob sie aktiviert sind oder nicht -> http://de.selfhtml.org/javascript/objekte/elements.htm#checked

    Nun musst die Berechnung durchführen und das Ergebnis mit document.getElementById('bla').innerHTML im HTML-Element mit der ID "bla" ausgeben.
     
  3. chavz

    chavz Byte

    Vielen Dank erstmal.

    Mir ist das ein wenig peinlich, da ich gerade techn. Informatik studiere, und nicht weiter weiß. Aber Java hatte ich noch nicht.

    Ich habe jetzt folgende Bausteine. Erstmal das Javascript:

    Code:
     <script type="text/javascript">
    function Rechnung () {
    var preis = 0;
    var smsflat, telefat, inetflat = 10;
    var allfon = 50;
    if (document.form.smsflat.checked == true) {
    preis = preis + smsflat;
    document.getElementById('anzeige').innerHTML = preis;
    }
    }
     </script>
    
    Die Checkbox ist wie folgt im Form (form) eingebunden:
    Code:
    <input name="smsflat" value="smsflatja"
    class="field" onclick="Rechnung()" type="checkbox">
    
    Und ausgegeben werden soll das ganze dann mit:
    Code:
     <div id="anzeige">
    Wenn ich jetzt jedoch die Checkbox aktiviere, kommt statt einer Preisanzeige "NaN".
    Wo ist der Fehler? Danke :)

    Viele Gr&#252;&#223;e
    chavz

    Hinweis: Der Einfachheit halber habe ich das ganze erstmal nur mit einer Option gemacht, nicht mit mehreren, um mich nicht selbst zu verwirren.
     
    Last edited: Feb 4, 2010
  4. kalweit

    kalweit Hüter der Glaskugel

    Wir reden hier ja auch nicht von Java. Gummi != Gummibärchen ;)


    vermutlich:

    smsflat wurde kein Wert zugewiesen und ist damit NULL. NULL ist aber nicht 0 und damit keine Zahl.
     
  5. chavz

    chavz Byte

    Ahh danke :) Von Delphi kannte ich das so, dass man mehrere Variablen durch Komma getrennt ein und denselben Wert zuordnen kann.

    Für alle, die dieses Problem gegoogelt haben hier nochmal der berichtigte Quellcode:

    Code:
    <script type="text/javascript">
    function Rechnung () {
    var preis = 0;
    [B]var smsflat = 10, telefat = 10, inetflat = 10[/B];
    var allfon = 50;
    if (document.DAFORM.smsflat.checked == true) {
    preis = preis + smsflat;
    document.getElementById('anzeige').innerHTML = preis;
    }
    }
          </script>
    
     
Thread Status:
Not open for further replies.

Share This Page