getElementsByName 的疏忽

今天帮mdd看一个js找错误,找了一段时间竟然是这个错误,╮(╯▽╰)╭以前自己没注意

该方法与 getElementById() 方法相似,但是它查询元素的 name 属性,而不是 id 属性。

注意:首先,因为一个文档中的 name 属性可能不唯一(如 HTML 表单中的单选按钮通常具有相同的 name 属性),所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素;其次这个函数中间比getelementById多一个s

怪不得jquery里面选择器没有针对name的,\(^o^)/~,个人觉得太不方便了

<html>
<head>
<script type="text/javascript">
function getElements()
  {
  var x=document.getElementsByName("myInput");
  alert(x[0].value+'\n'+x[1].value+'\n'+x[2].value);
  }
</script>
</head>

<body>
<input name="myInput" type="text" size="20" value="he" /><br />
<input name="myInput" type="text" size="20" value="you"/><br />
<input name="myInput" type="text" size="20" value="where"/><br />
<br />
<input type="button" onclick="getElements()"/>
</body>
</html>


你可能感兴趣的:(getElementsByName 的疏忽)