rek
rek

Reputation: 187

How to receive a true false if an innertext exist in dom

Is there any dom javascript query which can give if a specific innerText exist in the dom.?

Example:

document.querySelectorAll('section.active div.test')[1].innerText('specific text') !== 0

Upvotes: 2

Views: 647

Answers (2)

Roko C. Buljan
Roko C. Buljan

Reputation: 206508

const hasText = (el, text) => el.textContent.includes(text);

const div = document.querySelectorAll('section.active div.test')[1]
console.log(hasText(div, "specific text"));
<section class="active">
  <div class="test">I am a DIV</div>
  <div class="test">I have a specific text!</div>
</section>

To loop all your elements use NodeList.prototype.forEach()

const hasText = (el, text) => el.textContent.includes(text);

document.querySelectorAll('section.active div.test').forEach(el => {
  console.log(hasText(el, "specific text"));
});
<section class="active">
  <div class="test">I am a DIV</div>
  <div class="test">I have a specific text!</div>
</section>

Upvotes: 1

Ozgur Sar
Ozgur Sar

Reputation: 2204

You can check an element's innertext for some specific text as follows:

if (document.querySelectorAll('section.active div.test')[1].innerText).indexOf('specific text') > -1) {
// some code here
}

Upvotes: 1

Related Questions