Javascript 如何根据数据表中的行和列索引为多个单元格着色
如果给定数据表中的多个单元格的行和列索引,我需要一种给它们着色的方法。我从中找到了解决办法。但这里的功能只能给一个单元格着色。我希望对它进行修改,以便它将行和列索引的向量作为参数,并为它们着色。非常感谢您的帮助。我附上下面的代码片段Javascript 如何根据数据表中的行和列索引为多个单元格着色,javascript,r,shiny,dt,Javascript,R,Shiny,Dt,如果给定数据表中的多个单元格的行和列索引,我需要一种给它们着色的方法。我从中找到了解决办法。但这里的功能只能给一个单元格着色。我希望对它进行修改,以便它将行和列索引的向量作为参数,并为它们着色。非常感谢您的帮助。我附上下面的代码片段 changeCellColor <- function(row, col){ c( "function(row, data, num, index){", sprintf(" if(index == %d){", row-1),
changeCellColor <- function(row, col){
c(
"function(row, data, num, index){",
sprintf(" if(index == %d){", row-1),
sprintf(" $('td:eq(' + %d + ')', row)", col),
" .css({'background-color': 'orange'});",
" }",
"}"
)
}
datatable(iris,
options = list(
dom = "t",
rowCallback = JS(changeCellColor(1, 2))
)
)
changeCellColor这是你想要的吗
library(DT)
changeCellsColor <- function(rows, cols){
stopifnot(length(rows) == length(cols))
c(
"function(row, data, num, index){",
sprintf(" var rows = [%s];", paste0(rows-1, collapse = ",")),
sprintf(" var cols = [%s];", paste0(cols, collapse = ",")),
" for(var i = 0; i < rows.length; ++i){",
" if(index == rows[i]){",
" $('td:eq(' + cols[i] + ')', row)",
" .css({'background-color': 'orange'});",
" }",
" }",
"}"
)
}
datatable(iris,
options = list(
dom = "t",
rowCallback = JS(changeCellsColor(c(1,3), c(2,1)))
)
)
库(DT)
是的,这正是我想要的。!非常感谢!!