Document.getElementsByName()

翻译不完整。 请帮助我们翻译这篇文章!

根据给定的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

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
getElementsByNameChrome Full support 1Edge Full support 12
Notes
Full support 12
Notes
Notes Before Edge 79, this method returns an HTMLCollection, not a NodeList.
Firefox Full support 1IE Full support 5
Notes
Full support 5
Notes
Notes Returns an HTMLCollection, not a NodeList
Opera Full support 5Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0

Legend

Full support  
Full support
See implementation notes.
See implementation notes.

参阅