Document: getElementsByName() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2018.

The getElementsByName() method of the Document object returns a NodeList Collection of elements with a given name attribute in the document.

Syntax

js
getElementsByName(name)

Parameters

name

The value of the name attribute of the element(s) we are looking for.

Return value

A live NodeList collection, meaning it automatically updates as new elements with the same name are added to, or removed from, the document.

Examples

html
<!doctype html>
<html lang="en">
  <head>
    <title>Example: using document.getElementsByName</title>
  </head>
  <body>
    <input type="hidden" name="up" />
    <input type="hidden" name="down" />
  </body>
</html>
js
const upNames = document.getElementsByName("up");
console.log(upNames[0].tagName); // displays "INPUT"

Notes

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.

Specifications

Specification
HTML
# dom-document-getelementsbyname-dev

Browser compatibility

desktop mobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
getElementsByName
Chrome – Full support
Chrome 1 (Release date: 2008-12-11)
footnote Full support
Edge – Full support
Edge 12 (Release date: 2015-07-29)
footnote
footnote Before Edge 79, this method returns an HTMLCollection, not a NodeList.
Firefox – Partial support
Firefox 1 – 57 (Release date: 2004-11-09)
footnote Partial support
footnote Only supported for HTMLDocument, not all Document objects.
Firefox – Full support
Firefox 58 (Release date: 2018-01-23)
footnote Full support
Opera – Full support
Opera 5 (Release date: 2000-12-06)
footnote Full support
Safari – Partial support
Safari 1 – 3.1 (Release date: 2003-06-23)
footnote Partial support
footnote Only supported for HTMLDocument, not all Document objects.
Safari – Full support
Safari 4 (Release date: 2009-06-08)
footnote Full support
Chrome Android – Full support
Chrome Android 18 (Release date: 2012-06-27)
footnote Full support
Firefox for Android – Partial support
Firefox for Android 4 – 57 (Release date: 2011-03-29)
footnote Partial support
footnote Only supported for HTMLDocument, not all Document objects.
Firefox for Android – Full support
Firefox for Android 58 (Release date: 2018-01-22)
footnote Full support
Opera Android – Full support
Opera Android 10.1 (Release date: 2010-11-09)
footnote Full support
Safari on iOS – Partial support
Safari on iOS 1 – 3 (Release date: 2007-06-29)
footnote Partial support
footnote Only supported for HTMLDocument, not all Document objects.
Safari on iOS – Full support
Safari on iOS 3.2 (Release date: 2010-04-03)
footnote Full support
Samsung Internet – Full support
Samsung Internet 1 (Release date: 2013-04-27)
footnote Full support
WebView Android – Full support
WebView Android 4.4 (Release date: 2013-12-09)
footnote Full support
WebView on iOS – Partial support
WebView on iOS 1 – 3 (Release date: 2007-06-29)
footnote Partial support
footnote Only supported for HTMLDocument, not all Document objects.
WebView on iOS – Full support
WebView on iOS 3.2 (Release date: 2010-04-03)
footnote Full support

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
See implementation notes.
Has more compatibility info.

See also