3 Stimmen

Summe von zwei Textfeldern - javascript

Ich habe [dieses][1], ziemlich schwierige, Javascript-Beispiel online gefunden und es mit Erfolg in meine Website implementiert.

Ich möchte jedoch das Ergebnis der beiden Zwischensummen in einem neuen Textfeld erhalten.

Die traditionelle getElementbyId y total.value=total hat nicht geklappt.

EDITAR

 function doMath()
{
    // Capture the entered values of two input boxes
    var twogiga = document.getElementById('twogig').value;
    var fourgiga = document.getElementById('fourgig').value;

    // Add them together and display
    var sum = parseInt(twogiga) + parseInt(fourgiga);
    document.getElementById('total').value = parseInt(sum);
}

Dies ist das von mir verwendete Javascript. Aber aus irgendeinem Grund, wenn ich nur einen Wert habe ( twogig ), die total wird auf NaN gesetzt. Was ist falsch an meinem Skript?

7voto

John Punkte 360

Nun, wenn Sie den Texteingaben IDs zugewiesen haben, zum Beispiel: <input type="text" id="my_input" />, dann können Sie es mit document.getElementById('my_input').value aufrufen.

だから

<input type="text" id="my\_input1" />
<input type="text" id="my\_input2" />
<input type="button" value="Add Them Together" onclick="doMath();" />

<script type="text/javascript">
    function doMath()
    {
        // Capture the entered values of two input boxes
        var my\_input1 = document.getElementById('my\_input1').value;
        var my\_input2 = document.getElementById('my\_input2').value;

        // Add them together and display
        var sum = parseInt(my\_input1) + parseInt(my\_input2);
        document.write(sum);
    }
</script>

Natürlich ist das ein sehr einfaches Skript, das nicht überprüft, ob die eingegebenen Werte Zahlen sind. Wir müssen die Felder in Ganzzahlen umwandeln, da sie sonst Zeichenketten sind (2+2 würde also 22 ergeben). Wenn die Schaltfläche angeklickt wird, wird die Funktion aufgerufen, die für jedes Eingabefeld eine Variable erstellt, sie in Integerwerte umwandelt, sie addiert und unsere Summe ausgibt.

3voto

SuperKael Punkte 216

Ersetzen:

document.getElementById('total').value = parseInt(sum);

Mit:

document.getElementById('total').value = sum;

Sie haben bereits alles getan, was Sie für das Parsing brauchen.

0voto

Gauravbhai Daxini Punkte 1822
$("#value1, #value2").on('focusout', function() {
  var value2 = parseInt($("#value2").val()) > 0 ? parseInt($("#value2").val()) : 0;
  var value1 = parseInt($("#value1").val()) > 0 ? parseInt($("#value1").val()) : 0
  var sumOfValues = value1 + value2;
  console.log('Your sum is ' + sumOfValues);
});

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" class="input" id="value1">
<input type="text" class="input" id="value2">

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X