Jquery 输入数值减去第二个输入数值返回NaN
例如,当我将50写入Jquery 输入数值减去第二个输入数值返回NaN,jquery,html,Jquery,Html,例如,当我将50写入.res输入,将25写入第二个输入.res2并单击“相等”时,它必须减号,但警报不会返回数字 <div class="wind"> <input class="res" value=" " maxlength="24"> <input class="res2" value=" " maxlength="24"> <button class="equal">=</button> <d
.res
输入,将25写入第二个输入.res2
并单击“相等”时,它必须减号,但警报不会返回数字
<div class="wind">
<input class="res" value=" " maxlength="24">
<input class="res2" value=" " maxlength="24">
<button class="equal">=</button>
<div class="numbers">
firstNumber
和secondNumber
变量在第一次单击处理程序中定义,超出了.equal
单击处理程序的范围。当该事件发生时,您需要从DOM中检索值,如下所示:
$('.equal')。单击(函数(){
var firstNumber=parseInt($('.res').val(),10);
var secondNumber=parseInt($('.res2').val(),10);
console.log(firstNumber-secondNumber);
})
=
在第一次单击处理程序中定义了firstNumber
和secondNumber
变量,超出了的范围。equal
单击处理程序。当该事件发生时,您需要从DOM中检索值,如下所示:
$('.equal')。单击(函数(){
var firstNumber=parseInt($('.res').val(),10);
var secondNumber=parseInt($('.res2').val(),10);
console.log(firstNumber-secondNumber);
})
=
您的第一次单击处理程序将不起作用,因为$('.res')。is(':focus')
将永远不会为真,因为您必须单击其他元素之一才能触发事件。我不确定您希望逻辑如何工作。您的第一次单击处理程序将无法工作,因为$('.res')。is(':focus')
将永远不会为真,因为您必须单击其他元素之一才能触发事件。我不确定你到底期望逻辑如何运作。
$(".one,.two,.three,.four,.five,.six,.seven,.eight,.nine,.zero,.dot").on('mousedown',function(event){
event.preventDefault();
if($('.res').is(":focus")){
firstNumber = $('.res').val(Number(($('.res').val()) + $(this).val()));
} else {
secondNumber = $('.res2').val(Number(($('.res2').val()) + $(this).val()));
}
})
$('.equal').click(function(){
alert(firstNumber-secondNumber);
})