The HTMLInputElement.labels read-only property returns a NodeList of the <label> elements associated with the <input> element.


var labelElements = input.labels;

Return value

A NodeList containing the <label> elements associated with the <input> element.



<label id="label1" for="test">Label 1</label>
<input id="test"/>
<label id="label2" for="test">Label 2</label>


window.addEventListener("DOMContentLoaded", function() {
  const input = document.getElementById("test");
  for(var i = 0; i < input.labels.length; i++) {
    console.log(input.labels[i].textContent); // "Label 1" and "Label 2"


Specification Status Comment
HTML Living Standard
The definition of 'labels' in that specification.
Living Standard No change
The definition of 'labels' in that specification.
Recommendation Initial definition

Browser compatibility

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support 14.0 No support 56.0 (56.0)[1] No support (Yes) 5.1
Feature Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? No support 56.0 (56.0)[1] No support ? 5.0

[1] Implemented in bug 556743.

Document Tags and Contributors

Contributors to this page: dreamorosi, Sebastianz
Last updated by: dreamorosi,