jQuery从输入字段添加2个数字

我正在尝试添加两个警报框值,但我不断收到一个空白警告框。 我不知道为什么。

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

添加字符串连接它们:

 > "1" + "1" "11" 

你必须先将它们解析成数字:

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

此外,您必须从单击处理程序内部获取值:

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

否则,您将使用页面加载时文本框的值。

  

有两种方法可以在jQuery中添加两个数字

第一种方式:

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

第二种方式:

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

现在来问你的问题

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

使用此代码通过使用jquery添加两个数字

    HTML Tutorial           

好的,所以你的代码实际上是可行的,但是你需要做的是用你在点击前使用的jquery符号替换你的click函数中的a和b。 这将确保您拥有正确且最新的值。 所以改变你的点击function应该工作:

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

或者内联到:

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

这段代码有效,你可以和你的代码进行比较吗?

    HTML Tutorial