You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React JSX中如何根据ratio列≥0.96的条件高亮表格对应行

React Bootstrap 表格行条件高亮解决方案

你只需要修改表格<tbody>部分渲染<tr>标签的逻辑,根据当前行的ratio值动态设置样式即可,具体实现方案如下:


方案1:内联样式实现(无需额外写CSS,适合快速实现)

直接给<tr>标签动态绑定style属性,判断ratio >= 0.96时添加红色高亮样式,修改后的tbody代码如下:

<tbody>
  {tableData.map((rowData, index) => (
    // 这里增加条件判断,ratio大于等于0.96时添加红色背景高亮
    <tr 
      key={index}
      style={Number(rowData.ratio) >= 0.96 ? {
        backgroundColor: '#ffebee', // 浅红色背景
        color: '#b71c1c', // 深红色文字,提高显示对比度
      } : {}}
    >
      <td>{rowData.vin}</td>
      <td>{rowData.date}</td>
      <td> {rowData.invoice_price} </td>
      <td>{rowData.sold_price}</td>
      <td>{rowData.ratio}</td>
      <td>{rowData.customer_name}</td>
      <td>{rowData.salesperson}</td>
    </tr>
  ))}
</tbody>

注:这里加Number()转换是为了避免接口返回的ratio是字符串类型,导致比较逻辑出错,如果你确认接口返回的是数字类型可以去掉


方案2:CSS类名实现(适合样式复杂、需要复用的场景)

  1. 先在你的样式文件中添加高亮类:
.highlight-red-row {
  background-color: #ffebee;
  color: #b71c1c;
}
  1. 再修改<tr>的className属性即可:
<tr 
  key={index}
  className={Number(rowData.ratio) >= 0.96 ? 'highlight-red-row' : ''}
>

内容的提问来源于stack exchange,提问作者emma19

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 21:36:03