翻译正在进行中。

根据给定的name 返回一个在 (X)HTML document的节点列表集合。

语法

elements = document.getElementsByName(name) 
  • elements 是一个实时更新的 NodeList 集合。
  • name 是元素的 name 属性的值。

例子

<!DOCTYPE html>
<html lang="en">
<head>
 ...
</head>

<body>
<form name="up"><input type="text"></form>
<div name="down"><input type="text"></div>

<script>
var up_forms = document.getElementsByName("up");
console.log(up_forms[0].tagName); // returns "FORM"
</script>
</body>
</html>

注释

name 属性只有在(X)HTML文档中可用。

该方法返回一个live的 NodeList   集合,这个集合包含 name 属性为指定值的所有元素,例如<meta><object>,甚至那些不支持 name 属性但是添加了 name 自定义属性的元素也包含其中。

getElementsByName  在不同的浏览器其中工作方式不同。在IE和Opera中, getElementsByName()  方法还会返回那些 id 为指定值的元素。所以你要小心使用该方法,最好不要为元素的 nameid 赋予相同的值。 

IE 和 Edge 都返回一个 HTMLCollection, 而不是NodeList

规范

Specification Status Comment
HTML Living Standard
Document.getElementsByName()
Living Standard  
Document Object Model (DOM) Level 2 HTML Specification
Document.getElementsByName()
Obsolete Initial definition

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes Yes1 Yes Yes1 Yes Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes Yes Yes1 Yes Yes Yes ?

1. Returns an HTMLCollection, not a NodeList

参阅

文档标签和贡献者

标签: 
此页面的贡献者: gnepnaiL-oahZ, LylaYuKakola, xcchcaptain, Soy
最后编辑者: gnepnaiL-oahZ,