我有以下代码:
<td class="bedrag">
#_ATT{Factuur bedrag}
</td>
<td class="paid">
#_ATT{Betaald}{Ja|Nee}
</td>
在 td paid
中,可以给出是或否的选项。我想根据在 td 中选择的内容更改
。我认为最好的方法是使用 Javascript bedrag
的背景支付addClass
。所以我在谷歌上搜索了一会儿,找到了这段代码:
jQuery('a:contains("Sponsored")').closest('.post-item').addClass('sponz');
我更改它以满足我的需要:
$('.paid:contains("Nee")').closest('.bedrag').addClass('sponz');
但这没有用。所以我尝试了以下代码:
$('.paid:contains("Nee")').addClass('sponz');
这会将类 sponz
添加到 td paid
。但我想将它添加到 bedrag
。所以我然后尝试了这个:
('.bedrag:has(.paid:contains("Nee"))').addClass('sponz');
但这也行不通。
有谁知道如何让这段代码正常工作,以便在用户选择 Nee
选项时将 sponz
添加到 td bedrag
中?提前致谢!
最佳答案
closest()
并不是您所需要的,因为它会寻找 parent 。 .bedrag
是 .paid
的兄弟,所以你需要使用 prev()
代替:
$('.paid:contains("Nee")').prev('.bedrag').addClass('sponz');
.sponz { color: #C00; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td class="bedrag">bedrag 1</td>
<td class="paid">Nee</td>
</tr>
<tr>
<td class="bedrag">bedrag 2</td>
<td class="paid">Ja</td>
</tr>
<tr>
<td class="bedrag">bedrag 3</td>
<td class="paid">Nee</td>
</tr>
</table>
关于javascript - 如果 td 的值为 "No",则将类添加到不同的 td,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43256540/