【发布时间】:2017-12-26 14:36:30
【问题描述】:
我正在尝试构建一个基本计算器,但我的代码没有加起来。我的计算器应该做的是对输入 num1 和 num2 中插入的两个数字进行加、减、除或乘。然后在空 div 中打印答案,并将答案作为 id。
var numbers = new Object();
numbers.num1 = -1;
numbers.num2 = -1;
$("#num1").bind("keyup mouseup", function() {
numbers.num1 = ("#num1").val();
});
$("num1").bind("keyup mouseup", function() {
numbers.num2 = ("num2").val();
});
$("#add").on("click", function() {
var add = numbers.num1 + numbers.num2;
$("#answer").text(add);
});
$("#substract").on("click", function() {
var subs = numbers.num1 - numbers.num2;
$("#answer").text(subs);
});
$("#multiply").on("click", function() {
var multi = numbers.num1 * numbers.num2;
$("#answer").text(multi);
});
$("#divide").on("click", function() {
var div = numbers.num1 / numbers.num2;
$("#answer").text(div)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="user-inputs">
<form>
<input type="number" name="inputNum1" id="num1">
</form>
<form>
<input type="number" name="inputNum2" id="num2">
</form>
</div>
<div class="functions">
<button id="add">add</button>
<button id="substract">substract</button>
<button id="multiply">multiply</button>
<button id="divide">divide</button>
</div>
<h2 id="answer"></h2>
【问题讨论】:
-
你的代码有什么问题?
-
按钮加、减、除和乘似乎没有任何作用
-
您在第二个绑定中有错字。这是 num2, #num2, ???
-
我的直觉是你得到的是字符串连接而不是数字加法。 jQuery
.val()通常返回一个字符串,因此您需要将其转换为 in/float/whatever。便宜(但有时不推荐)的方法就是$(...).val()*1.0。此外,您在("#num1").val();和("#num2").val();前面缺少一些$。
标签: javascript jquery html