2016-12-11 5 views
0
<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8"/> 
    </head> 
<body> 
    <form id="window"> 
     <input type="text" id="num1"><br /> 
     <input type="text" id="num2"><br /> 
     <input type="button" value="Calculate" onClick="main()"><br /> 
</form> 
    <script> 
     var num1 = Number(document.getElementById("num1").value); 
     var num2 = Number(document.getElementById("num2").value); 
     function main(){ 
     alert(num1 + num2); 
     } 
    </script> 
    </body> 
    </html> 

Dies ist mein Code, sagen Sie mir, was ich falsch mache, denn wenn ich den alert() anrufe, wird 0 auf dem Bildschirm angezeigt. Ich habe es in verschiedenen Browsern versucht, aber ohne Glück. Gehen Sie einfach auf mich, weil ich erst vor etwa einer Woche begonnen haben! ``JavaScript kehrt immer wieder zurück 0

Antwort

6

Es ist, weil Sie die Werte von num1 und num2einmal, gleich am Anfang des Skripts sind einstellen, wenn die Eingänge nicht über noch nichts in ihnen (Number("") ist 0), nicht jedes Mal main heißt. Bewegen Sie einfach diesen beiden Linien inmain so die Werte der Eingänge als der Tastenklick verwendet:

function main(){ 
    var num1 = Number(document.getElementById("num1").value); 
    var num2 = Number(document.getElementById("num2").value); 
    alert(num1 + num2); 
} 
0

Sie benötigen num1 und num2 innerhalb main() zu erhalten; Verwenden Sie den folgenden Code:

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8"/> 
    </head> 
<body> 
    <form id="window"> 
     <input type="text" id="num1"><br /> 
     <input type="text" id="num2"><br /> 
     <input type="button" value="Calculate" onClick="main()"><br /> 
</form> 
    <script> 
     function main(){ 
      var num1 = Number(document.getElementById("num1").value); 
      var num2 = Number(document.getElementById("num2").value); 
      alert(num1 + num2); 
     } 
    </script> 
    </body> 
    </html> 
+0

Ich möchte diejenigen fragen, die diese Antwort abgelehnt haben, war die Antwort falsch oder Ihre Meinung? –