当前位置: 首页 > news >正文

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 动态控制且无法预知样式的场景下使用。性能稍差,且代码较冗长。

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

http://www.jsqmd.com/news/317129/

相关文章:

  • 我删掉了本地的 Docker Desktop,再也没有环境问题了
  • 2026熬夜党防脱洗发水真实测评!发根强韧+高新生发密度双验证
  • 你真的以为表达力只是“会说”?它可能是你钱包里最被低估的资产!
  • 长春学美甲美睫机构怎么选?2026年最新权威推荐排行榜单
  • 视频拍摄剪辑培训机构哪家好?陈阅视觉,专业拍摄剪辑课程实训首选
  • 2026年香港身份申请代理机构哪家服务好?五大机构多维深度测评与客观推荐
  • 深入解析:Android EDLA 打开5G热点失败分析解决2
  • 2025-2026留学移民机构行业分析:市场格局与选择要点
  • 【2025最新】基于SpringBoot+Vue的美食烹饪互动平台管理系统源码+MyBatis+MySQL
  • Java SpringBoot+Vue3+MyBatis 球队训练信息管理系统系统源码|前后端分离+MySQL数据库
  • 【毕业设计】SpringBoot+Vue+MySQL 大学生心理健康管理系统平台源码+数据库+论文+部署文档
  • Java SpringBoot+Vue3+MyBatis 物流管理系统系统源码|前后端分离+MySQL数据库
  • 【2025最新】基于SpringBoot+Vue的web大学生一体化服务平台管理系统源码+MyBatis+MySQL
  • 【毕业设计】SpringBoot+Vue+MySQL 开发精简博客系统平台源码+数据库+论文+部署文档
  • NVIDIA GRID vGPU Driver 19.0 for VMware vSphere 9.0(含客户机驱动)驱动包分享|附部署教程
  • 基于SpringBoot+Vue的实习管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】
  • vSphere.Next 潜在特性揭秘、VUM 自动化方案及 ghettoVCB 邮件功能更新
  • C++面向对象入门:实验一
  • 2026年塑料垃圾桶厂家排名,高性价比品牌揭晓
  • 分析东辉清洁胶带的生产工艺,浙江靠谱清洁胶带推荐
  • 说说东辉清洁胶带基本信息,性价比如何?
  • Stripe MCP
  • 盒理收纳品牌口碑好不好,推荐适合家庭的款式
  • Fetch MCP
  • 盘点电动升降工作台供应商,了解费用及选购要点
  • Blender MCP
  • 2026必备10个降AI率工具,继续教育人必看
  • 2026年值得关注的家用厨下净水器品牌推荐:十大高口碑产品选购指南
  • 2026必备!专科生毕业论文神器TOP8一键生成论文工具测评
  • 2026年负压/造景/观赏/智能鱼缸实力推荐:六如家居鱼缸满足多元场景需求