Javascript 选择第二个前置元素

Javascript 选择第二个前置元素,javascript,jquery,css,Javascript,Jquery,Css,Iv对第一行进行了排序,因为它后面没有一行tr.emails-detials,但我需要更改上面一行的边框底部颜色,如下图所示,所选行缺少蓝色边框 我用 $(function() { $('.dropdown-image').click(function() { $(this).parent().parent().parent().prev($("tr:nth-of-type(1)")).children().css('border-bottom-color',

Iv对第一行进行了排序,因为它后面没有一行tr.emails-detials,但我需要更改上面一行的边框底部颜色,如下图所示,所选行缺少蓝色边框


我用

$(function() {
     $('.dropdown-image').click(function() {
            $(this).parent().parent().parent().prev($("tr:nth-of-type(1)")).children().css('border-bottom-color', '#a3d0dd');
            $(this).parent().parent().parent().prevUntil('.main').children().css('border-bottom-color', '#a3d0dd');
     });
});

我知道有人会对.parent().parent()和.prev().prev()等进行评论,但现在问题已经解决了。

$(this.nexist('tr').prev('.main')
无论您何时执行
.parent().parent().parent().parent()你做错了什么!这应该很容易解决,但我只想快速问一个问题。你能更改HTML标记吗?将电子邮件详细信息设置为单个行中嵌入表的tbody更有意义。我不知道jQuery方法,但不会
$(this)。最近('tr.main')
在这里工作?这不是工作方式。它是最近的祖先,因此您需要将
.prev
一起使用
$(function() {
     $('.dropdown-image').click(function() {
            $(this).parent().parent().parent().prev($("tr:nth-of-type(1)")).children().css('border-bottom-color', '#a3d0dd');
            $(this).parent().parent().parent().prevUntil('.main').children().css('border-bottom-color', '#a3d0dd');
     });
});
$(this).parent().parent().parent().prev('tr').prev('.main').children().css('border-bottom-color', '#a3d0dd');