如何根据值更改<td>元素的颜色

Laner107

我目前正在尝试根据值是正还是负来更改表格中元素的颜色,目前这是我所拥有的,但是它无法正常工作,并且是n ^ 2,我觉得效率很低:

export const ActiveStockList = () => {
  const store = useStockListStore();

  var x = document.getElementsByClassName("ColorTest");
  for (var i = 0; i < x.length; i++) {
    for (var j = 0; j < x[i].length; j++) {
      if (x[i].charAt(j) != "-") {
        x[i].style.Color = "green";
      } else {
        x[i].style.Color = "red";
      }
    }
  }

  return useObserver(() =>
    store.stocks.map((stock) => (
      <tr>
        <td className="justify-content-center">
          <a href={"/stocks/" + stock.symbol}>{stock.symbol}</a>
        </td>
        <td>{+stock.latestVolume}</td>
        <td className="ColorTest">
          {(+stock.changePercent * 100).toFixed(2)}%
        </td>
        <td className="ColorTest">$ {+stock.change}</td>
        <td>$ {+stock.latestPrice}</td>
        <td className="ColorTest">{(+stock.ytdChange * 100).toFixed(2)}%</td>
        <td>Buy</td>
        <td>10,023,000</td>
        <td>89.23</td>
        <td>140,000</td>
      </tr>
    ))
  );
};

将三个元素更改为绿色或红色的最佳方法是什么,具体取决于它们的值是大于0还是小于0?谢谢!

詹姆斯·哈曼

我的建议。编写为内联样式。无需像使用React那样修改dom。使用实际数字和逻辑检查:

style={stockNumber <= 0 ? {color: "red"} : {color: "green"}}

或任何逻辑。如果您不想一遍又一遍地重复逻辑,请将其转换为返回样式对象的函数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据 td 的值更改 Td 的颜色

如何使用jquery捕获td元素中的值,并根据捕获的td的值更改其他td元素的背景色?

如何使用JavaScript / jQuery根据表中的值更改td背景颜色?

根据Angular 6中的值更改td中文本的颜色

根据第3 td中的值更改背景颜色

使用 javascript 根据动态值更改 <td> 背景颜色

html 根据另一个 td 值更改 td 文本颜色

根据条件更改<td>颜色

如何根据td元素中的文本值动态更改字体颜色

根据数据库中的值更改td单元格的颜色

根据角度值更改td样式

根据另一个TD元素,如何更改JQuery Datatables TD元素中的图标?

根据先前的值更改HTML元素的颜色-CSS

单击时如何更改没有 id/class 的特定“td”元素的背景颜色?

如何遍历表中的所有td元素,添加与sass颜色图不同的颜色?

如何在悬停时更改td的td背景颜色

单击td中的链接时,如何更改td的背景颜色?

如何根据值更改进度栏颜色

如何使用CSS根据文本值更改文本的颜色?

如何根据其当前值更改noUiSliders上的颜色?

如何根据对象值更改javascript中的颜色

如何根据值更改输入滑块的拇指颜色?

如何使用php和html根据值更改文本颜色?

如何根据值更改ant设计进度栏颜色?

如何根据R中列的值更改图形的颜色

在反应中,如何根据值更改范围滑块的颜色?

如何使用单选按钮更改<td>的颜色?

JavaScript:如何更改每个 td 的背景颜色?

如何比较td文本并更改backgroud颜色?