这是我想要实现的目标,但由于某种原因,它不起作用:
使用Javascript:
<script type="text/javascript">
function calculate() {
var n1 = getElementById("1").value
var n2 = getElementById("2").value
var answer = n1+n2
alert(answer)
}
</script>
HTML:
<form id="form">
<input id="1" type="text" />
<input id="2" type="text" />
<input type="button onClick="calculate()" value="Go" />
</form>
我不确定我哪里出错了,有人可以帮忙吗?
答案 0 :(得分:4)
您不应该使用数字来创建ID - 在HTML4和CSS中isn't allowed,在HTML5中允许这样做,但这样做并不好。
此外,在此上下文中,它在HTML5中是非法的 - 作为以数字requires at least one letter afterwards开头的ID。
因此,首先用字母/单词替换带编号的ID。
除此之外,您还需要修复下面提到的语法错误:
将getElementById("id").value
替换为document.getElementById("id").value;
并替换<input type="button onClick="calculate()" value="Go" />
<input type="button" onClick="calculate()" value="Go" />
(注意"
缺少结束"button"
。
这是一个有用的 jsFiddle。
以下是jsFiddle中使用的代码:
<强>使用Javascript:强>
function calculate() {
var n1 = document.getElementById("aItem").value;
var n2 = document.getElementById("bItem").value;
var answer = n1+n2;
alert(answer);
}
<强> HTML:强>
<form id="form">
<input id="aItem" type="text" />
<input id="bItem" type="text" />
<input type="button" onClick="calculate()" value="Go"/>
</form>
答案 1 :(得分:1)
HTML:
<input id="val1" type="text" value="100" />
<input id="val2" type="text" value="200"/>
<input type="button" onclick="calculate()" value="Go" />
JavaScript的:
function calculate() {
var n1 = +(document.getElementById("val1").value);
var n2 = +(document.getElementById("val2").value);
var answer = n1+n2;
alert(answer);
}
这将添加输入的2个数值而不是连接它们。