gpt4 book ai didi

jquery 前一个元素有几个类

转载 作者:行者123 更新时间:2023-12-03 22:58:19 24 4
gpt4 key购买 nike

我得到了这样的表结构:

<tr class="dossier">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail alert">
<td>...</td>
<td>...</td>
</tr>
<tr class="dossier">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="even dossier">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail alert">
<td>...</td>
<td>...</td>
</tr>

当 tr 元素具有 alert 时类,我必须添加 alert类到前一个元素 dossier类。

我尝试这个代码:

$("tr.alert").prev("tr.dossier").addClass("alert");

这仅适用于 <tr class="dossier">元素。它不适用于 <tr class="even dossier">元素。

有人有办法做到这一点吗?

最佳答案

您可以迭代 tr 元素并检查是否有类 alert。然后,您可以检查之前具有类 dossier 的元素,并将类 alert 添加到该元素:

$("table tr").each(function() {
if ($(this).hasClass("alert")) {
$(this).prevAll("tr.dossier").first().addClass("alert");
}

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr class="dossier">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail alert">
<td>...</td>
<td>...</td>
</tr>
<tr class="dossier">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="even dossier">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail">
<td>...</td>
<td>...</td>
</tr>
<tr class="detail alert">
<td>...</td>
<td>...</td>
</tr>
</table>

关于jquery 前一个元素有几个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32948286/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com