在javascript中访问HTML表单值

时间:2013-04-20 18:40:07

标签: javascript

这是我想要实现的目标,但由于某种原因,它不起作用:

使用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>

我不确定我哪里出错了,有人可以帮忙吗?

2 个答案:

答案 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个数值而不是连接它们。