Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Java Ergebnis zusätzlich mit Selectbox Addieren
- Ersteller Bazs
- Erstellt am
R
rille
Gast
Was hat das mit Java zu tun?
Du kannst anstatt die Berechnung direkt im oninput-Event auszuführen dort eine Funktion aufrufen. Innerhalb der Funktion kannst Du dann so viele Berechnungen ausführen, wie Du magst.
Siehe auch: https://www.w3schools.com/jsref/event_oninput.asp
Ansonsten ist mir die Fragestellung nicht ganz klar. Den ausgewählten Wert einer Selectbox bekommst Du mit
Siehe auch: https://www.w3schools.com/jsref/event_oninput.asp
Ansonsten ist mir die Fragestellung nicht ganz klar. Den ausgewählten Wert einer Selectbox bekommst Du mit
Javascript:
var sb = document.getElementById("Id der Selectbox");
var sbtext = sb.options[sb.selectedIndex].text; // angezeigter Text der SelectBox
var sbvalue = sb.options[sb.selectedIndex].value; // Attribut Value der SelectBox
Zuletzt bearbeitet:
Ich möchte halt die Value der Selectbox für das ausgewählte Text mit result4.value nur addieren, es soll dann auch sobald ich den Text ändere also zb ich von Kartoffeln (value 50) auf Bananen (value 100) umsteige, der das Ergebnis von result4 was vorher schon ausgerechnet wurde mit den Bananen oder Kartoffeln multipliziert, zb bei ein Ergebnis von 200, sollen die Bananen oder Kartoffeln hinzugerechnet werden und da hängt es bei mir
Zuletzt bearbeitet:
Javascript:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function makeChange(){
var sb = document.getElementById("select");
var preis = parseFloat(sb.options[sb.selectedIndex].value) * 59;
document.getElementById("preis").innerHTML = preis.toFixed(2);
}
</script>
</head>
<body onload="makeChange()">
<select name="select" id="select" onchange="makeChange()">
<option value="0.5">0,5</option>
<option value="1" selected>1,0</option>
<option value="1.5">1,5</option>
</select>
<p><strong>Montagekosten</strong>: <span id="preis"></span> Euro</p>
</body>
</html>
- parseFloat an Stelle von parseInt wegen der Nachkommastellen
- mit toFixed gebe ich eine Zahl mit einer festen Anzahl Nachkommastellen aus
- mit dem onload im body rufe ich eine Funktion auf, sobald das Dokument vollständig geladen wurde
- mit dem selected in der SelectBox setze ich den Defaultwert
Mit dem Vollzitat des vorhergehenden Postings verstößt Du gegen die Forenregeln. Solltest Du besser löschen ...
Zuletzt bearbeitet:
Danke dir, jetzt stehe ich vor einen anderen Problem.
Ich möchte eine weitere Selectbox einfügen und diese nun mit result4 zusammen rechnen, ich weiß, der Code sieht nicht toll aus :'D
Oder habe ich da einfach nur ein Denkfehler?
Muss gestehen, habe schon lange nichts mehr mit HTML, javascript und php gemacht 😂
Ich möchte eine weitere Selectbox einfügen und diese nun mit result4 zusammen rechnen, ich weiß, der Code sieht nicht toll aus :'D
Oder habe ich da einfach nur ein Denkfehler?
Muss gestehen, habe schon lange nichts mehr mit HTML, javascript und php gemacht 😂
Zuletzt bearbeitet:
Innerhalb einer html-Datei kann es nur einen
Ansonsten rufst Du beim zweiten
<head>
und einen <body>
geben. Ich habe die bei meinem Post nur verwendet, damit Du Dir das ganze direkt im Browser anschauen kannst ... Das klappt mit Deinen Codefragmenten nicht.Ansonsten rufst Du beim zweiten
<select>
makeChangeo() auf. Nur gibt es die Funktion nicht. Dafür hast Du makeChange() doppelt. Das onload musst Du nicht verwenden, macht bei Deinem Formular auch nicht wirklich Sinn, das war nur ein Beispiel um schon vor einer Eingabe die Berechnung mit den Default-Werten durchzuführen..Wenn ich das alles so ab ändere wie du es mir geschrieben hast, sehe ich zwar wie viel die Montage kosten wären, aber es rechnet nicht die Kosten auf das ausgerechnet Ergebnis, bei der 2. Select(i) sehe ich kein Preis und sobald ich was bestätige, rechnet es das auf result5 bzw gibt irgendwelche Zahlen dort aus
Welches Deiner vielen result - Dinger ist denn dein "ausgerechnet"- Ergebnis?
Dann musst Du halt die Werte berechnen und dazuaddieren. Also einfach eine Zeile in makeChange() bzw. makeChangeo() hinzufügen, die Dein result nimmt, den eigen Preis dazu addiert und an die erforderliche Stelle schreibt.
Ich empfehle Dir noch einmal sprechende bzw. beschreibende Variablennamen zu nutzen ...
Dann musst Du halt die Werte berechnen und dazuaddieren. Also einfach eine Zeile in makeChange() bzw. makeChangeo() hinzufügen, die Dein result nimmt, den eigen Preis dazu addiert und an die erforderliche Stelle schreibt.
Ich empfehle Dir noch einmal sprechende bzw. beschreibende Variablennamen zu nutzen ...
Habe leider erneut ein Problem, weiß nicht ob es daran liegt, dass es so spät ist oder ich einfach zu doof bin :'D
und zwar möchte ich nun ausschließlich die Selectboxen addieren, mehr nicht, sobald ich dies mit folgenden Code mache, Schreibt er mir zwar die Values ein, aber addiert diese nicht miteinander sondern nur nebeneinander.
Danke euch für eure Hilfe.
und zwar möchte ich nun ausschließlich die Selectboxen addieren, mehr nicht, sobald ich dies mit folgenden Code mache, Schreibt er mir zwar die Values ein, aber addiert diese nicht miteinander sondern nur nebeneinander.
Code:
<script type="text/javascript">
function makeChangeSelect(){
var sb = document.getElementById("select");
var preis = parseFloat(sb.options[sb.selectedIndex].value);
document.getElementById("preis").innerHTML = preis.toFixed(2);
}
</script>
...............Snipped...............
<form name="form1" method="post" action="" oninput= "result8.value = select.value + select0.value + select1.value + select2.value + select3.value">
<select name="select" id="select" onchange="makeChangeselect()">
<option value="454">1</option>
<option value="585" selected>2</option>
<option value="989">3</option>
</select>
Mehr ist dies nicht, ich habe mehrere MakeChangeSelect drin, natürlich unter verschiedenen Namen., diese möchte ich nur alle zusammen addiert haben.
Zuletzt bearbeitet:
Ähnliche Themen
- Antworten
- 13
- Aufrufe
- 611
- Antworten
- 6
- Aufrufe
- 1.544
- Antworten
- 8
- Aufrufe
- 2.105
- Antworten
- 10
- Aufrufe
- 10.870
- Antworten
- 2
- Aufrufe
- 3.440