我做错了什么?
HTML
<form name="Calc">
<BR>
<input type="text" name="1" size="20">*
<input type="text" name="2" size="20">=
<input type="text" name="sum" size="20">
<BR>
<input type="button" name="Calc" value="Calculate" onClick="calcsum()">
</form>
脚本
function calcsum() {
sum.value = 1.value * 2.value;
}
答案 0 :(得分:2)
您应该使用document.getElementsByName
尝试:
function calcsum() {
document.getElementsByName("sum")[0].value = document.getElementsByName("1")[0].value * document.getElementsByName("2")[0].value;
}
答案 1 :(得分:0)
如果您传入对侦听器中按钮的引用:
<input type="button" ... onclick="calcsum(this)">
然后在函数中,您可以使用它来按名称获取对表单及其他控件的引用:
function calcsum(button) {
var form = button.form;
sum.value = form['1'].value * form['2'].value;
}
请注意,表单控件值始终是字符串,因此请谨慎使用+
进行添加。
我不喜欢HTML属性名称的混合大小写。它们不区分大小写,但它们的相关DOM属性是。最好使用“onclick”使属性与DOM“onclick”属性匹配。