我觉得我再次成为新手。我以为我早就遇到了这些问题。下面是一个简单的脚本,其中有两个功能都不起作用。我错过了什么任何帮助表示赞赏。
<div id="calcArea">
<div>
<input type="number" id="beerPerc" value="50" onkeyup="calculator2()"> % of Beer Drinkers<br>
<input type="number" id="winePerc" value="30" onkeyup="calculator2()"> % of Wine Drinkers<br>
<input type="number" id="liquorPerc" onkeyup="calculator2()"> % of Liquor Drinkers<br>
</div>
<script>
function calculator() {
var bee = document.getElementById("beerPerc").value;
var win = document.getElementById("winePerc").value;
var liq = 100-(bee + win);
document.getElementById("liquorPerc").value = liq;
}
function calculator2() {
document.getElementById("liquorPerc").value = parseInt(100 - (document.getElementById("beerPerc").value + document.getElementById("winePerc").value))
}
</script>
答案 0 :(得分:2)
两件事:
案件意义重大。如果您声明变量bee
,则无法使用Bee
进行阅读。
.value
始终是一个字符串。您需要将字符串转换为数字:
var bee = Number(document.getElementById("beerPerc").value);
如果你不这样做,+
将执行字符串连接,而不是添加。
您不需要就数字计算的结果致电parseInt()
,这总是一个数字。
function calculator2() {
document.getElementById("liquorPerc").value = 100 - (parseInt(document.getElementById("beerPerc").value, 10) + parseInt(document.getElementById("winePerc").value, 10)))
}