jquery 选择表列

发布于 2024-10-31 16:58:37 字数 295 浏览 0 评论 0原文

我正在努力选择特定表格的单元格。

某些单元格具有“testOff”类,如果该类存在,我尝试将表行更改为不同的颜色。

这是我到目前为止所拥有的:

$("table#customersTable td.testOff").each(function(){

    $(this).closest("tr").css("background-color","#F6CCDA");

});

我一定错过了一些东西,因为它没有显示任何单元格的背景颜色。 有人发现我的选择方式有错误吗?

I am working on selecting a specific table's cells.

Some cells have a class of "testOff", and I'm attempting to change the table row to a different color, if the class exists.

here's what I have so far:

$("table#customersTable td.testOff").each(function(){

    $(this).closest("tr").css("background-color","#F6CCDA");

});

I must be missing something, since it's not showing the background color for any of the cells.
Does anyone see an error with how I'm selecting?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

£烟消云散 2024-11-07 16:58:37

您可以使用如下内容:

$('td.testOff').closest('tr').addClass('highlightColour');

CSS:

.highlight,
.highlight td /* this part's important, and ensures that the 'highlight' colour is seen in the td elements */
{ 
    background-color: #ffa;
}

JS Fiddle demo

顺便说一句:您不需要 each(),因为选择器将返回并使用一个元素数组。

参考文献:

You could use something like:

$('td.testOff').closest('tr').addClass('highlightColour');

CSS:

.highlight,
.highlight td /* this part's important, and ensures that the 'highlight' colour is seen in the td elements */
{ 
    background-color: #ffa;
}

JS Fiddle demo.

Incidentally: you don't need the each(), as the selector will return, and work with, an array of elements already.

References:

小帐篷 2024-11-07 16:58:37

您可以使用 :has 选择器:

$('#customersTable tr:has(td.testOff)').css('background-color', '#f6ccda');

You can use the :has selector:

$('#customersTable tr:has(td.testOff)').css('background-color', '#f6ccda');
做个ˇ局外人 2024-11-07 16:58:37
$('#customersTable td.testOff').closest('tr').addClass('highlightColour').css("background-color","#F6CCDA");

工作演示

$('#customersTable td.testOff').closest('tr').addClass('highlightColour').css("background-color","#F6CCDA");

working demo

遇到 2024-11-07 16:58:37
$("td.testOff").parent().children().css("background-color","#F6CCDA");

根据我之前的问题,以防万一您需要定位 td 单元格本身来覆盖以前的设置

siblings() 正如我在评论中提到的,只会选择 .testOff 两侧的单元格 - 这会找到所有其父级 tr 的子级

$("td.testOff").parent().children().css("background-color","#F6CCDA");

as per my earlier question, just in case it's the td cells themselves you need to target to override a previous setting

siblings() as I also mentioned in my comments, would only select the cells on either side of the .testOff - this finds all the children of it's parent tr

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文