我尝试使用html和JavaScript实现以下简单的等式(5+x=?)
:
function count() {
var x = document.getElementById("myInput").value;
document.getElementById('execute').innerHTML = x + 5;
}
<div> 5 + <input type="number" id="myInput">
<input type="button" value="=" onclick="count()">
<span id="execute">?</span>
</div>
不幸的是,当我在输入字段中编写示例2,然后单击按钮(=)
时,它给出了我的答案52号,而不是我想看到的答案 - 7.
它似乎只是加入5旁边的新数字,而不是添加它,就像它是一个字符串而不是一个数字。我知道这不是最明亮的功能而且它不是很有用,但如果你能给我一个我错的地方,我将不胜感激。
这将帮助我理解更好的JavaScript并继续我的教育。
答案 0 :(得分:2)
我希望这会有所帮助。谢谢。
function count()
{var x = document.getElementById("myInput").value;
document.getElementById('execute').innerHTML = parseInt(x) + 5;}
<div> 5 + <input type="number" id="myInput">
<input type="button" value="=" onclick="count()">
<span id="execute">?</span>
</div>
答案 1 :(得分:0)
将字符串更改为数字的几种方法,对于此示例,我使用parseInt()
,其中10为基数。
function count() {
var x = document.getElementById("myInput").value;
var xn = parseInt(x,10);
document.getElementById('execute').innerHTML = xn + 5;
}
<div> 5 + <input type="number" id="myInput">
<input type="button" value="=" onclick="count()">
<span id="execute">?</span>
</div>