Javascript 非常简单的js计算器';行不通

Javascript 非常简单的js计算器';行不通,javascript,html,Javascript,Html,我做错了什么 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

我做错了什么

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>        
您应该使用

尝试:


如果您将引用传递给侦听器中的按钮:

<input type="button" ... onclick="calcsum(this)">
请注意,表单控件值始终是字符串,因此请小心使用
+
进行添加


我不喜欢HTML属性名的大小写混合。它们不区分大小写,但它们的相关DOM属性是区分大小写的。因此,最好对属性使用“onclick”来匹配DOM“onclick”属性

属性名和变量名不能以数字开头。将名称更改为更有意义的名称(如
number1
)或更好的名称,使用ID和
document.getElementById
而不是
name.value
(不建议这样做)。下面是@PhistucK同意您的评论,但“不能开始”应该是“不应该”,因为演示由“laaposto”编写工作正常。然后我没有得到相关评论@菲斯塔克。这里唯一的冲突是名称,而不是属性和变量。更正-*不应。谢谢,@PM。。
function calcsum() {
    document.getElementsByName("sum")[0].value = document.getElementsByName("1")[0].value * document.getElementsByName("2")[0].value;
}
<input type="button" ... onclick="calcsum(this)">
function calcsum(button) {
    var form = button.form;
    sum.value = form['1'].value * form['2'].value;
}