如何在 R 中使用 rowCallback jquery for DT::Datatable 定位特定列
How to target specific columns with rowCallback jquery for DT::Datatable in R
我正在尝试修改当前的行回调代码,使其以第 1 列和 4:last 列为例。
当前行我有目标col 3:end
"for (i = 3; i < data.length; i++) {",
我试过这样写:
"for (i = 1 | i = 3; i < data.length; i++) {",
但随后它停止工作。努力寻找正确的语法
我现在拥有的是:
library(DT)
Table_opts <- list(
dom = 'Bfrtip',
searching = F,
pageLength = 50,
searchHighlight = TRUE,
colReorder = TRUE,
fixedHeader = TRUE,
buttons = c('csv', 'print'),
paging = TRUE,
deferRender = TRUE,
scrollX = T,
scrollY = 310,
rowCallback = JS(
"function(row, data) {",
"for (i = 3; i < data.length; i++) {",
"if (data[i]>1 | data[i]<0){",
"$('td:eq('+i+')', row).html(data[i].toExponential(1));",
"}",
"}",
"}")
)
DT::datatable(mtcars, rownames = F, selection = "single",
extensions = c('Buttons', 'FixedHeader', 'ColReorder','Scroller'), options = Table_opts)
要跳过 i=2
,您可以这样做:
for (i = 1; i < data.length; i++) {
if (i == 2) {
continue;
}
......
}
我正在尝试修改当前的行回调代码,使其以第 1 列和 4:last 列为例。
当前行我有目标col 3:end
"for (i = 3; i < data.length; i++) {",
我试过这样写:
"for (i = 1 | i = 3; i < data.length; i++) {",
但随后它停止工作。努力寻找正确的语法
我现在拥有的是:
library(DT)
Table_opts <- list(
dom = 'Bfrtip',
searching = F,
pageLength = 50,
searchHighlight = TRUE,
colReorder = TRUE,
fixedHeader = TRUE,
buttons = c('csv', 'print'),
paging = TRUE,
deferRender = TRUE,
scrollX = T,
scrollY = 310,
rowCallback = JS(
"function(row, data) {",
"for (i = 3; i < data.length; i++) {",
"if (data[i]>1 | data[i]<0){",
"$('td:eq('+i+')', row).html(data[i].toExponential(1));",
"}",
"}",
"}")
)
DT::datatable(mtcars, rownames = F, selection = "single",
extensions = c('Buttons', 'FixedHeader', 'ColReorder','Scroller'), options = Table_opts)
要跳过 i=2
,您可以这样做:
for (i = 1; i < data.length; i++) {
if (i == 2) {
continue;
}
......
}