如何仅使用R DT数据表对1列执行行回调

时间:2019-03-29 18:13:36

标签: r dt

在像下面这样的数据表中,我无法将rowCallback更改为仅更改1列,假设i =2。我试图更改for (i = 1 ....语句,但我总是以空白表结束

datatable(cars/10,options = list(
    rowCallback = JS(
        "function(row, data) {",
        "for (i = 1; i < data.length; i++) {",
        "if (data[i]>1000 | data[i]<1){",
        "$('td:eq('+i+')', row).html(data[i].toExponential(1));",
        "}",
        "}",
        "}")
)
)

1 个答案:

答案 0 :(得分:0)

您只需要将代码应用于i = 2:

datatable(cars/10, 
          options = list(
            rowCallback = JS(
              "function(row, data) {",
              "  if (data[2]>1000 || data[2]<1) {",
              "    $('td:eq(2)', row).html(data[2].toExponential(1));",
              "  }",
              "}")
          )
)