Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

1 Zum Seitenanfang

Dienstag, 9. August 2011, 21:13

Jqery Kommazahlen addieren

  Spoiler Spoiler


Javascript-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
$("form#submit_shopping_2").submit(function() {   
        var article        = $('#article').attr('value');
        var unit           = $('#unit').attr('value');
        var unit_price     = $('#unit_price').attr('value');

        //var controlForm = '<b>'+i+'.</b><input type="text" id="'+i+'" name="control_article" value="'+article+'" /><input type="text" id="'+i+'" name="control_quantity" value="'+unit+'" maxlength="2" size="2" /><input type="text" id="'+i+'" name="control_price" value="'+unit_price+'" maxlength="5" size="5" /><br />';
        i++;
        var controlForm =   '<b>'+i+'.</b>'+
                            '<input type="text" name="article['+i+'][name]" value="'+article+'" />'+
                            '<input type="text" name="article['+i+'][quantity]" value="'+unit+'" />'+
                            '<input type="text" name="article['+i+'][price]" value="'+unit_price+'" />'+
                            '<br />';
        

            if ( (article !== "")&&(unit !== "")&&(unit_price !== "") ) {
                
                $("#submit_control").append(controlForm).fadeIn('slow');

                $("#submit_shopping_2").clearForm();

                
           }else $("p#false").show("slow");setTimeout(function() {$("p#false").hide("slow");}, 2000);
           
        return false;  
    });



Ich möchte das die Kommazahlen in unit_price zusammengezählt werden und als Summe am Ende der controlForm steht. Aber weiss nicht wie ich das hinbekommen soll ;(
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
 

cccpmik

Foren Gott

Dabei seit: 04.09.2007

Beiträge: 2 999

 

2 Zum Seitenanfang

Dienstag, 9. August 2011, 21:25

Javascript-Quelltext

1
var unit_price     = parseFloat($('#unit_price').attr('value'));
Mein kleines Projekt
-Cruel Online-
 

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

3 Zum Seitenanfang

Dienstag, 9. August 2011, 22:11

Javascript-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
$("form#submit_shopping_2").submit(function() {   
        var article        = $('#article').attr('value');
        var unit           = $('#unit').attr('value');
        var unit_price     = $('#unit_price').attr('value');

        i++;
        var controlForm =   '<b>'+i+'.</b>'+
                            '<input type="text" name="article['+i+'][name]" value="'+article+'" />'+
                            '<input type="text" name="article['+i+'][quantity]" value="'+unit+'" />'+
                            '<input type="text" name="article['+i+'][price]" value="'+unit_price+'" />'+
                            '<br />';
        
        var total     = parseFloat($('#unit_price').attr('value'));
        
            if ( (article !== "")&&(unit !== "")&&(unit_price !== "") ) {
                
                $("#submit_control").append(controlForm).fadeIn('slow');

                $("#submit_shopping_2").clearForm();
                $("p#total").html(total);
                
           }else $("p#false").show("slow");setTimeout(function() {$("p#false").hide("slow");}, 2000);
           
        return false;  
    });


Wenn ich es so mache nimmt er immer nur den letzten Wert und den auch nur als Ganze Zahl
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Josephine« (9. August 2011, 22:11)

 

cccpmik

Foren Gott

Dabei seit: 04.09.2007

Beiträge: 2 999

 

4 Zum Seitenanfang

Mittwoch, 10. August 2011, 14:34

wie wärs, wenn du uns genaue beispielzahlen nennnst.

was steht in unit_price
was steht bei total und so weiter. mal ein bisschen mehr beschreiben... nicht einfach code einfügen, ich und andere werden ihn nicht durchgehen
Mein kleines Projekt
-Cruel Online-
 

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

5 Zum Seitenanfang

Mittwoch, 10. August 2011, 14:50

Wie schon in meinem ersten Post steht, sind in unit_price Kommazahlen drin. Beispiele 0,99 und 1,14 und 3,56 und 6,45 und 5,34 und 5,65 usw. Das total soll alle abgeschickten unit_price Werte zusammenzählen und als Summe ausgeben.



Wie hier zu sehen ist, wird immer nur die letzte Ganze Zahl angeigt, dort sollte aber 15,45 stehen, wenn ich mich nicht verrechnet habe :)
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
 

cccpmik

Foren Gott

Dabei seit: 04.09.2007

Beiträge: 2 999

 

6 Zum Seitenanfang

Mittwoch, 10. August 2011, 15:10

  Spoiler Spoiler

Javascript-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
var total = 0; //besser wäre es, wenn man hier den total mit jQuery aus einem div oder so auslesen könnte
$("form#submit_shopping_2").submit(function() {   
        var article        = $('#article').attr('value');
        var unit           = $('#unit').attr('value');
        var unit_price     = $('#unit_price').attr('value');

        i++;
        var controlForm =   '<b>'+i+'.</b>'+
                            '<input type="text" name="article['+i+'][name]" value="'+article+'" />'+
                            '<input type="text" name="article['+i+'][quantity]" value="'+unit+'" />'+
                            '<input type="text" name="article['+i+'][price]" value="'+unit_price+'" />'+
                            '<br />';
        
         total  += parseFloat(unit_price.replace(/,/, ".")); //ersetze beim uniprice die kommas mit einem punkt, wandle den wert in einen vom string in ein float um und addiere diesen wert zu dem letzten wert des totals
        
            if ( (article !== "")&&(unit !== "")&&(unit_price !== "") ) {
                
                $("#submit_control").append(controlForm).fadeIn('slow');

                $("#submit_shopping_2").clearForm();
                $("p#total").html(total);
                
           }else $("p#false").show("slow");setTimeout(function() {$("p#false").hide("slow");}, 2000);
           
        return false;  
    });
Mein kleines Projekt
-Cruel Online-

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »cccpmik« (10. August 2011, 19:48)

 

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

7 Zum Seitenanfang

Mittwoch, 10. August 2011, 15:52

Kann ich das auch noch irgendwie auf 2 Stellen hinter dem Komma begrenzen? Das nur 2 stellen hinter dem Komma ausgegeben werden?
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
 

cccpmik

Foren Gott

Dabei seit: 04.09.2007

Beiträge: 2 999

 

8 Zum Seitenanfang

Mittwoch, 10. August 2011, 16:13

ja kannst du:P
Mein kleines Projekt
-Cruel Online-

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »cccpmik« (10. August 2011, 16:13)

 

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

9 Zum Seitenanfang

Mittwoch, 10. August 2011, 19:40

:-P und wie würde das mein Meister ccpmik anstellen?
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
 

cccpmik

Foren Gott

Dabei seit: 04.09.2007

Beiträge: 2 999

 

10 Zum Seitenanfang

Mittwoch, 10. August 2011, 19:46

naja erstmal überlegen wie es heißt wenn man eine lange nachkomma stelle hat und man möchte 2 nachkommastellen haben. sobald ich das wort habe, google nach dem wort + javascript schau mir die treffer an und suche nach codeshnipsel, diese baue ich dann ein;)
Mein kleines Projekt
-Cruel Online-
 

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

11 Zum Seitenanfang

Mittwoch, 10. August 2011, 20:44

Ja hast Recht, das hätte ich auch googeln können. Bist ja richtig flexibel jetzt bitest du sogar noch Hilfe zur Selbsthilfe an.

Hier meine erfolgreiche Suche brachte dieses Ergebniss zustande:

Javascript-Quelltext

1
$("p#total").html(total.toFixed(2));
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
 

cccpmik

Foren Gott

Dabei seit: 04.09.2007

Beiträge: 2 999

 

12 Zum Seitenanfang

Mittwoch, 10. August 2011, 20:48

eigentlich habe eher gedacht dass du eine javascript round funktion finden würdest die 2 stellen nach dem komma rundet...
Mein kleines Projekt
-Cruel Online-
 

Josephine

Haudegen

Dabei seit: 30.04.2009

Beiträge: 624

 

13 Zum Seitenanfang

Donnerstag, 11. August 2011, 15:30

So ab ca. 30.00 zeigt er nur noch NaN an. Hat jemand ne Ahnung warum das so ist?

Hier der Teil im Code:

Javascript-Quelltext

1
2
3
4
5
6
7
8
9
// Punkt durch Komma ersetzen, Betraege multiplizieren und addieren
                unit_price  = parseFloat(unit_price.replace(/,/, "."));
                unit_price = unit * unit_price;
                total  += parseFloat(unit_price);

// Ausgabe
$("#total").html(total); // .toFixed(2)

// Habe das toFixed(2) schon ausgkommentiert und versucht, aber auch ohne dieses kommt NaN...
Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
 

stfschaefer

Routinier

Dabei seit: 21.08.2010

Beiträge: 252

 

14 Zum Seitenanfang

Donnerstag, 11. August 2011, 21:04

Hast du eigentlich ueberall daran gedacht, dass du als Dezimaltrenner Punkt und nicht Komma nimmst?