Hello i have HTML below:
JavaScript
x
7
1
<table border="1" cellpadding="5" class="product-data" rules="all"><tbody>
2
<tr><td class="item_price">$ 3.99</td> </tr>
3
<tr class="" style="color: #aaaaaa; text-decoration: line-through;"><td class="item_beforeprice">$ 39.95</td></tr>
4
<tr></tr>
5
<tr class="hidden"><td class="item_status">Sold</td></tr>
6
<tr><td></table>
7
And then if my page was loaded and see the Sold text i want to change the:
JavaScript
1
2
1
<td class="item_status">Sold</td>
2
To:
JavaScript
1
2
1
<td class="item_status sold-status">Sold</td>
2
and if the code is:
JavaScript
1
2
1
<td class="item_status">Offer</td>
2
Change to:
JavaScript
1
2
1
<td class="item_status offer-status">Offer</td>
2
Thank you before
Advertisement
Answer
Just add class to your .item-status, if you use jQuery:
JavaScript
1
4
1
$(function () {
2
$('.item_status').addClass('sold-status');
3
})
4
With pure javascript:
JavaScript
1
2
1
document.querySelector('.item_status').classList.add('sold-status');
2
Update: Detect sold text With jQuery:
JavaScript
1
6
1
$('.product-data td').each(function () {
2
if ($(this).text().toLowerCase() == 'sold') {
3
$(this).addClass('sold-status');
4
}
5
})
6
With pure Javascript
JavaScript
1
7
1
var td = document.querySelectorAll('.product-data td');
2
td.forEach(function(element) {
3
if (element.innerText.toLowerCase() === 'sold') {
4
element.classList.add('sold-status');
5
}
6
})
7