The getElementsByName() method of the document object returns a NodeList Collection of elements with a given name in the document.
elements = document.getElementsByName(name)
elements is a live NodeList Collection, meaning it automatically updates as new elements with the same name are added to/removed from the document.name is the value of the name attribute of the element(s).<!DOCTYPE html>
<html lang="en">
<title>Example: using document.getElementsByName</title>
<input type="hidden" name="up">
<input type="hidden" name="down">
<script>
var up_names = document.getElementsByName("up");
console.log(up_names[0].tagName); // displays "INPUT"
</script>
</html>
The name attribute can only be applied in (X)HTML documents.
The returned NodeList Collection contains all elements with the given name, such as <meta>, <object>, and even elements which do not support the name attribute at all.
The getElementsByName method works differently in IE10 and below. There, getElementsByName() also returns elements that have an id attribute with the specified value. Be careful not to use the same string as both a name and an id.
The getElementsByName method works differently in IE. There, getElementsByName() does not return all elements which may not have a name attribute (such as <span>).
Both IE and Edge return an HTMLCollection, not a NodeList
| Specification | Status | Comment |
|---|---|---|
| HTML Living Standard The definition of 'Document.getElementsByName()' in that specification. | Living Standard | |
| Document Object Model (DOM) Level 2 HTML Specification The definition of 'Document.getElementsByName()' in that specification. | Obsolete | Initial definition |
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | Yes | Yes
|
Yes | Yes
|
Yes | Yes |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | Yes | Yes | Yes
|
Yes | Yes | Yes | ? |
document.getElementById() to return a reference to an element by its unique id
document.getElementsByTagName() to return references to elements with the same tag name
document.querySelector() to return references to elements via CSS selectors like 'div.myclass'
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/document/getElementsByName