js queryselector get elements with empty attribute

How to use JS querySelector to get elements with empty attribute?

In JavaScript, the querySelector() method is used to select elements from the DOM based on a CSS selector. This method returns the first element that matches the specified selector. To select elements with an empty attribute, we can use the CSS attribute selector with an empty value.

Using the CSS attribute selector

The CSS attribute selector is used to select elements based on the value of their attributes.

To select elements with an empty attribute, we can use the [attribute=""] selector. This will select all elements that have the specified attribute with an empty value.


const elementsWithEmptyAttr = document.querySelectorAll('[data-attribute=""]');

In this example, we are using querySelectorAll() method to select all elements that have an empty "data-attribute" attribute. This will return a NodeList of all the matching elements.

Using the :empty pseudo-class

The :empty pseudo-class is used to select elements that have no child nodes or whitespace-only child nodes.

To select elements with an empty attribute using this method, we can first select all elements that have the specified attribute using the CSS attribute selector, and then filter out those that are not empty using the :empty pseudo-class.


const elementsWithEmptyAttr = document.querySelectorAll('[data-attribute]:empty');

In this example, we are first selecting all elements that have a non-empty "data-attribute" attribute. Then, we are filtering out those elements that are empty using the :empty pseudo-class. This will return a NodeList of all the matching elements.

Subscribe to The Poor Coder | Algorithm Solutions

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
[email protected]
Subscribe