Reputation: 11
<div class="numb">1</div>
<div class="numb">2</div>
<div class="numb">3</div>
<div class="numb">4</div>
<div class="numb">5</div>
I need to get an Ouput like this for example : <div class="numb four-stars">4</div>
I tried this JS :
if ($(".numb").text().trim() === "4") {
$(".numb").addClass('four-stars');
}
I made a mistake ?
Upvotes: 1
Views: 44
Reputation: 337560
To achieve this you need to loop through each .numb
element and check its text value individually. To do that you can use filter()
, like this:
$('.numb').filter((i, el) => +el.textContent.trim() === 4).addClass('four-stars');
.four-stars { color: #C00; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="numb">1</div>
<div class="numb">2</div>
<div class="numb">3</div>
<div class="numb">4</div>
<div class="numb">5</div>
Upvotes: 1