[英]Remove parent div class if child div has a specific value
我有以下代碼:
<td class="CalendarDay CalendarDay--valid" style="width: 37px; height: 36px;">
<button type="button" class="CalendarDay__button">16</button>
</td>
檢查按鈕值是否為16,然后從父div中刪除.CalendarDay--valid
的.CalendarDay--valid
。
我該怎么做呢?
您可以使用closest()
方法來做到這一點:
var elem = $('.CalendarDay__button'); if (elem.text().trim() === '16') { elem.closest('.CalendarDay--valid').removeClass('CalendarDay--valid'); }
.CalendarDay--valid button{ color: red; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table> <tr> <td class="CalendarDay CalendarDay--valid" style="width: 37px; height: 36px;"> <button type="button" class="CalendarDay__button">16</button> </td> </tr> </table>
this
特定的td
使用parent
。 我在example.17上給出了兩個td
16-17,但刪除了16。
$('.CalendarDay').find('.CalendarDay__button').each(function() { if ($(this).text() == '16') $(this).parent('td').remove(); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table> <tr> <td class="CalendarDay CalendarDay--valid" style="width: 37px; height: 36px;"> <button type="button" class="CalendarDay__button">16</button> </td> <td class="CalendarDay CalendarDay--valid" style="width: 37px; height: 36px;"> <button type="button" class="CalendarDay__button">17</button> </td> </tr> </table>
如果您有多個按鈕需要檢查,請嘗試以下操作:
$.each($('.CalendarDay__button'),function(){ var btn = $(this); var parent = btn.closest('.CalendarDay'); // Before console.log(parent.attr('class')) if(btn.text() == "16"){ parent.removeClass('CalendarDay--valid'); // After console.log(parent.attr('class')) } })
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table> <tr> <td class="CalendarDay CalendarDay--valid" style="width: 37px; height: 36px;"> <button type="button" class="CalendarDay__button">16</button> </td> </tr> </table>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.