2013-04-29 24 views
8

Ich versuche, zwei Werte von Alarmfeldern hinzuzufügen, aber ich bekomme immer eine leere Alarmbox. Ich weiß nicht warum.jQuery Hinzufügen von 2 Zahlen aus Eingabefeldern

$(document).ready(function(){ 
    var a = $("#a").val(); 
    var b = $("#b").val(); 
    $("submit").on("click", function(){ 
     var sum = a + b; 
     alert(sum);   
    }) 
}) 

Antwort

25

Saiten Hinzufügen verkettet sie:

> "1" + "1" 
"11" 

Sie haben sie in Zahlen analysieren zuerst:

var a = parseInt($('#a').val(), 10); 
var b = parseInt($('#b').val(), 10); 

Auch müssen Sie die Werte erhalten aus dem Inneren des Click-Handler:

$("submit").on("click", function() { 
    var a = parseInt($('#a').val(), 10); 
    var b = parseInt($('#b').val(), 10); 

Ansonsten verwenden Sie die Werte der Textfelder beim Laden der Seite.

+0

erste sollte u ur-Bibliothek für jquery hinzufügen, so u müssen, um es herunterzuladen. und dann fügen Sie diese Zeile in der ersten .......

-2

Ok, also funktioniert dein Code tatsächlich, aber was du tun musst, ist a und b in deiner Klickfunktion durch die jQuery-Notation zu ersetzen, die du vor dem Klick benutzt hast. Dies stellt sicher, dass Sie die richtigen und aktuellsten Werte haben. so, wenn Sie Ihre Klickfunktion auf diese funktionieren sollte:

$("submit").on("click", function(){ 
    var sum = $("#a").val().match(/\d+/) + $("#b").val().match(/\d+/); 
    alert(sum);   
}) 

oder inlined zu:

$("submit").on("click", function(){ 
    alert($("#a").val().match(/\d+/) + $("#b").val().match(/\d+/));   
}) 
-2

Dieser Code funktioniert, können Sie vergleichen es mit Ihnen?

<!DOCTYPE html> 
<html lang="en-US"> 
<head> 
    <title>HTML Tutorial</title> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
    <meta charset="windows-1252"> 
<script> 

$(document).ready(function(){ 
    var a = $("#a").val(); 
    var b = $("#b").val(); 
    $("#submit").on("click", function(){ 
     var sum = a + b; 
     alert(sum);   
    }) 
}) 
</script> 
</head> 
<body> 
    <input type="text" id="a" name="option"> 
    <input type="text" id="b" name="task"> 
<input id="submit" type="button" value="press me"> 

</body> 

</html> 
3
<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#btnadd').on('click', function() { 
      var n1 = parseInt($('#txtn1').val()); 
      var n2 = parseInt($('#txtn2').val()); 
      var r = n1 + n2; 
      alert("sum of 2 No= " + r); 
      return false; 
     }); 
     $('#btnclear').on('click', function() { 
      $('#txtn1').val(''); 
      $('#txtn2').val(''); 
      $('#txtn1').focus(); 
      return false; 
     }); 
    }); 
</script> 
2

Es gibt zwei Wege, die Sie zwei Nummer in jQuery

Erster Weg hinzufügen:

var x = parseInt(a) + parseInt(b); 
alert(x); 

Zweiter Weg:

var x = parseInt(a+2); 
alert(x); 

Nun kommen Ihre Frage

var a = parseInt($("#a").val()); 
var b = parseInt($("#b").val()); 
alert(a+b); 
0

Verwenden Sie diesen Code für das Hinzufügen von zwei Zahlen von jquery mit

<!DOCTYPE html> 
    <html lang="en-US"> 
    <head> 
     <title>HTML Tutorial</title> 
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
     <meta charset="windows-1252"> 
    <script> 

    $(document).ready(function(){ 
     $("#submit").on("click", function(){ 
     var a = parseInt($('#a').val()); 
     var b = parseInt($('#b').val()); 
      var sum = a + b; 
      alert(sum); 
     }) 
    }) 
    </script> 
    </head> 
    <body> 
     <input type="text" id="a" name="option"> 
     <input type="text" id="b" name="task"> 
    <input id="submit" type="button" value="press me"> 

    </body> 

    </html> 
Verwandte Themen