news 2026/4/23 9:47:10

jQuery 获取 class 等于 abc 的 table 元素,获取到 table 以后,设置第三列和第七列边框为红色,使用 jQuery 设置内联样式

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
jQuery 获取 class 等于 abc 的 table 元素,获取到 table 以后,设置第三列和第七列边框为红色,使用 jQuery 设置内联样式

jQuery 获取 class 等于 abc 的 table 元素,获取到 table 以后,设置第三列和第七列边框为红色,使用 jQuery 设置内联样式

针对“多个表格”以及“样式被覆盖”的问题,之前的逐行遍历方式效率较低。我们可以利用CSS 类来管理样式,这是解决优先级冲突最优雅且高效的方法。

推荐方案:添加 CSS 类(最佳实践)

这种方法不仅性能更好(浏览器原生处理样式),而且能轻松解决优先级问题。

1. 先在 CSS 中定义样式

<head>中的<style>标签或 CSS 文件里添加:

<style>/* 定义第三列和第七列的样式 */.table-abc-highlight > tbody > tr > *:nth-child(3), .table-abc-highlight > tbody > tr > *:nth-child(7){border:2px solid red!important;/* 使用 !important 确保覆盖原有样式 */padding:5px;/* 可选:防止边框塌陷 */}</style>
2. jQuery 代码(批量处理)
$(document).ready(function(){// 1. 找到所有 class 包含 'abc' 的 table// 2. 给它们添加一个新的 class 'table-abc-highlight'$('table.abc').addClass('table-abc-highlight');// 3. (可选) 如果表格有 thead 或 tfoot,上面的 CSS 只针对 tbody// 如果需要包含表头,可以使用这个更通用的选择器:// $('table.abc').find('tr').find('td, th').removeClass('highlight-col');// $('table.abc').find('tr').find('td:nth-child(3), th:nth-child(3), td:nth-child(7), th:nth-child(7)').addClass('highlight-col');});

备选方案:强制内联样式(如果必须用 JS)

如果你无法修改 CSS 文件,必须使用 jQuery 内联样式,可以使用attr('style', ...)来强制覆盖。

$(document).ready(function(){// 遍历每一个 class 为 abc 的 table$('table.abc').each(function(){var$table=$(this);// 遍历该表格下的每一行$table.find('tr').each(function(){// 使用 attr 直接写入 style 属性,并包含 !important// 第三列 (索引2)$(this).find('td, th').eq(2).attr('style','border: 2px solid red !important;');// 第七列 (索引6)$(this).find('td, th').eq(6).attr('style','border: 2px solid red !important;');});});});

方案对比与建议

  • 方案一(addClass)强烈推荐。性能高,代码清晰,维护方便。通过 CSS 类管理样式是前端标准做法。
  • 方案二(attr style):在必须通过 JS 动态控制且无法预知样式的场景下使用。性能稍差,且代码较冗长。

建议使用方案一,它能一劳永逸地解决样式优先级问题,并且代码非常简洁。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 10:10:31

vSphere.Next 潜在特性揭秘、VUM 自动化方案及 ghettoVCB 邮件功能更新

本文整合了从 vSphere 4.1 API 中窥见的下一代产品潜在特性、基于 vSphere SDK for PerlVIXPowerCLI 的 VUM 自动化实操方案&#xff0c;以及 ghettoVCB 脚本的邮件通知功能更新&#xff0c;为 VMware 技术探索者和运维人员提供参考。 一、从 vSphere 4.1 API 看 vSphere.Next …

作者头像 李华
网站建设 2026/4/18 10:45:26

高能预警:GTID模式下mysqldump的致命陷阱,80%的DBA都曾误解

本文首发于「数据库干货铺」公众号&#xff0c;转载请联系授权。 那是一个平静的夜晚&#xff0c;突然手机响起急促的告警声——线上MySQL从库数据同步异常&#xff01;业务部门反映主从数据不一致&#xff0c;部分读请求获取到了过期数据。经过紧急排查&#xff0c;问题竟然源…

作者头像 李华
网站建设 2026/4/18 10:16:16

医疗报销系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

摘要 随着信息技术的快速发展&#xff0c;医疗行业的信息化管理需求日益增长。传统的医疗报销流程依赖纸质单据和人工审核&#xff0c;效率低下且易出错&#xff0c;难以满足现代医疗服务的需求。医疗报销系统信息管理系统的开发旨在解决这一问题&#xff0c;通过数字化手段优…

作者头像 李华
网站建设 2026/4/22 10:51:29

python微信小程序的在线测试考试系统

目录 微信小程序在线测试考试系统的核心功能系统架构设计关键模块实现性能优化策略数据分析功能 开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01; 微信小程序在线测试考试系统的核心功能 微…

作者头像 李华
网站建设 2026/4/1 0:39:27

python微信小程序的疫苗预约设计与实现

目录 疫苗预约微信小程序的设计与实现 开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01; 疫苗预约微信小程序的设计与实现 系统架构 采用前后端分离架构&#xff0c;前端基于微信小程序框架开…

作者头像 李华