Megapeinlich, aber ich raffs nicht...

Kann mir mal jemand erklären, weshalb das nicht funzt…?

[HTML]

Tarifrechner

[/HTML]

Also im Firefox funktioniert es. Aber kann sein dass der IE die Eingaben nicht als Zahlen kennt. Du musst die als integer parsen
Beispiel:

parseInt(document.Formular.Eingabe.value)

Und eine Bitte.

  1. Bitte richtigen bereich auswählen.
  2. Wenn du mehrere fragen hast die nicht sehr spezifisch oder anderes sind als deine anderen Fragen, benutze bitte dienen altes Thema und Stelle dort die Frage, bevor du 3 Themen nacheinander aufmachst :slight_smile: :wink:

ich kann mit Deiner AW leider nichts anfangen…(ich raff noch zu wenig…schäm)
Wenn möglich mal komplett einbauch, wäre nett!
Deiner Bitte werde ich in Zukunft nachkommen.

[HTML]

Test [/HTML]

also du holst ja die Eingabe vom Benutzer aus dem Textfeld. Manche Browser sehen die Eingabe dann zwingend als Text. Und da man text nicht multiplizieren kann, funktioniert die funktion nicht :slight_smile: Somit musst du ihm sagen, das die Eingaben Integer(Ganze Zahlen) sind. Das Funktioniert in dem du um deine Eingabe Variable ein parseInt legst. Das selbe funktioniert auch mit Fließkommazahlen (parseFloat()).
Hoffe konnte dir da ein bisschen Licht ins Dunkle bringen :wink:

andem liegt es nicht…
kurze zwischenfrage…Bezieht sich deine Antwort denn auch genau auf meinen Quelltext?
Habe nen anderen Quelltext drin stehen…
Danke für Deine Mühe!

PS: Er bringt mir immer den Fehler ‚)‘ in Zeile 16 erwartet…?

[HTML]

(„Das Ergebnis ist bei Eintarifnutzung beträgt " ErgebnisET " Euro pro Jahr“);

[/HTML]ersetze diesen Teil mal durch folgenden

[HTML]

(‚Das Ergebnis ist bei Eintarifnutzung beträgt ’ +ErgebnisET+ ’ Euro pro Jahr‘);

[/HTML]Bin mir aber nicht sicher ob das so funktioniert, aber würde für mich mehr sinn ergeben…

:shock: Also eben war da noch der andere Quelltext.
Aber Master Chief hat schon die Lösung für deinen Quelltext gegeben ^^

nein, an dem lags auch nicht…leider…:frowning:

hatte mich vertippt…
WOW, es funzt doch! vielen Dank erst mal dafür,…wenn man zu lange an der kiste hockt, verblödet man noch ganz…!

Hab allerdings nochmals ne kleine Frage:
Wie kann ich die Ausgabe auf 2 dezimalstellen runden?

So weit ich weiss kann round() nur auf ganze Zahlen runden. Da musts du dir dann folgender Maßen helfen.
[HTML]
zahl = zahl * 100;
zahl = Math.round(zahl);
zahl = zahl/100;
[/HTML]Hier mal ne Funktion
[HTML]
function roundNumber(number, stellen) {
number = parseInt(number);
stellen = parseInt(stellen);

var rundung = 1;
if(stellen < 0) stellen = 0;

for(var i=0; i < stellen; i++) { rundung *= 10; }

number *= rundung;
number = Math.round(number);
number /= rundung;

return number;
}

// einsetzen: will es auf 3 Stellen nach dem Komma gerundet haben
var ergebnis = roundNumber(12.4157, 3);
[/HTML]edit:
nochmal was nachgetragen. Nun stimmts

Du suchst toFixed()

Nicht funzen ist eine denkbar schlechte Fehlrbeschreibung. Du kennst die Fehlerkonsole im Firefox? Nein, dann schau mal im Menü Extras, der IE versteckt seine Fehlermeldungen etwas und zeigt sie nur mit einem kleinen gleben Dreieck in der Statusleiste an, nach einem Doppelklick darauf kommst du an die Meldung.

Oh sehr schön.
toFixed kannte ich auch nicht :smiley:
Abe rman lernt ja nie aus :stuck_out_tongue: :mrgreen: