【问题标题】:How to change row color in datatables?如何更改数据表中的行颜色?
【发布时间】:2018-10-22 08:13:02
【问题描述】:

我正在使用数据表,如果 value = INACTIVE,我目前卡在将一行更改为另一种颜色,已经尝试了很多东西,但它确实出现了奇怪的错误,我的代码是:

"createdRow": function (row, data, dataIndex) {
        if (data[9] = "INACTIVE") {
            $(row).addClass("yellow");
        } else {
            $(row).addClass("white");
        }
    }

此代码更改所有颜色行,但我只想更改值 INACTIVE

感谢您的帮助!

【问题讨论】:

  • 您可以添加更多信息或创建数据表代码的演示吗?

标签: javascript jquery html css datatables


【解决方案1】:

您的代码中有错字。

在您的 if 语句中使用 == 而不是 =

"createdRow": function (row, data, dataIndex) {
    if (data[9] == "INACTIVE") {
        $(row).addClass("yellow");
    } else {
        $(row).addClass("white");
    }
}

【讨论】:

  • 你可以多加一个,做成===
【解决方案2】:

在条件中,您将值 "INACTIVE" 分配给 data[9],而不是比较该值。随后,该条件仅检查data[9] 是否具有some 值,为真,并且始终添加类.yellow

所以条件应该是这样的if (data[9] == "INACTIVE") 或者更确切地说if (data[9] === "INACTIVE") 来执行检查而不进行类型转换。

【讨论】:

    【解决方案3】:

    在您的 if 语句中,您使用了一个用于赋值的“=”。您应该使用双 '=' 来比较值是否相同,使用三重 '=' 来比较值和数据类型是否相同。

    您也只检查索引 9 的数据。在您的函数中,您似乎也传递了索引,您应该改为将代码更改为类似的内容。

    if (  data[ dataIndex ] === "INACTIVE" ) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-15
      • 1970-01-01
      • 2019-06-16
      • 1970-01-01
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多