我正在使用javascript创建一个用户必须输入数字的程序,计算机将根据这些数字对它们进行计算。 但是,当我编写Javascript来添加两个输入的数字时,它只是将它们放在一起而不是添加。 例如,当它必须添加4 + 4时,输出为44,而不是8。
<form>
<p> Give side 1</p>
<br>
<input type="number" id="side1">
<br><br>
<p> Give side 2</p>
<br>
<input type="number" id="side2">
<br><br>
<p> Give side 3</p>
<br>
<input type="number" id="side3">
<br><br>
<button type="button" onClick="my()"> Calculate</button>
<p id="sum"></p>
</form>
</center>
<script type="text/javascript">
function my() {
var a= document.getElementById("side1").value;
var b= document.getElementById("side2").value;
var c= document.getElementById("side3").value;
var d= a + b + c;
document.getElementById("sum").innerHTML="The are o the triangle is " + "" + d;
}
</script>
答案 0 :(得分:2)
这很有效。您只需使用parseInt
:
function my() {
var a = parseInt(document.getElementById("side1").value, 10);
var b = parseInt(document.getElementById("side2").value, 10);
var c = parseInt(document.getElementById("side3").value, 10);
var d = a + b + c;
document.getElementById("sum").innerHTML = "The are o the triangle is " + "" + d;
}
<强>价:强>
答案 1 :(得分:0)
从document.getElementById("").value
获得的值是String的类型。
总结一下,你必须把它改成int,
虽然有很多方法可以做到这一点。
var a= document.getElementById("side1").value - 0
或
var a= parseInt(document.getElementById("side1").value)
(建议此输入无效的情况下使用)
或
var a= document.getElementById("side1").value * 1;