将鼠标悬停在数据表的每一行上时添加自定义文本
Add custom text when hovering over each row of datatable
我有下面的数据表,当我将鼠标悬停在其中的每一行时,我应该得到:
鼠标悬停在第一行时:“全球病例总数”
悬停在第二行时:“世界总死亡人数”
悬停在第 3 行时:“所选国家/地区的总病例数”
当鼠标悬停在第 4 行时:“所选国家/地区的总死亡人数”
V1<-c(2,3,4,5)
fd<-data.frame(V1)
rownames(fd)[1:4]<-c("Total cases", "Total deaths", "Cases", "Deaths")
library(DT)
datatable(fd,colnames = rep("", ncol(fd)),
options = list(lengthChange = FALSE,scrollX = TRUE,dom = 't',
rowCallback = JS(
"function(row, data) {",
"var full_text = 'This rows values are :' + data[0] ",
"$('td', row).attr('title', full_text);",
"}")
))
您可以在 rowCallback
函数中添加一些简单的逻辑,以便在将鼠标悬停在行上时获取所需的文本。
V1<-c(2,3,4,5)
fd<-data.frame(V1)
rownames(fd)[1:4]<-c("Total cases", "Total deaths", "Cases", "Deaths")
library(DT)
datatable(fd,colnames = rep("", ncol(fd)),
options = list(lengthChange = FALSE,scrollX = TRUE,dom = 't',
rowCallback = JS(
"function(row, data) {",
"
if (data[0].startsWith('Total')) {
var full_text = data[0] +' in the world.';
} else {
var full_text = 'Total ' + data[0].toLowerCase() +' in selected countries.';
}
console.log(data);
",
"$('td', row).attr('title', full_text);",
"}")
))
我有下面的数据表,当我将鼠标悬停在其中的每一行时,我应该得到:
鼠标悬停在第一行时:“全球病例总数”
悬停在第二行时:“世界总死亡人数”
悬停在第 3 行时:“所选国家/地区的总病例数”
当鼠标悬停在第 4 行时:“所选国家/地区的总死亡人数”
V1<-c(2,3,4,5)
fd<-data.frame(V1)
rownames(fd)[1:4]<-c("Total cases", "Total deaths", "Cases", "Deaths")
library(DT)
datatable(fd,colnames = rep("", ncol(fd)),
options = list(lengthChange = FALSE,scrollX = TRUE,dom = 't',
rowCallback = JS(
"function(row, data) {",
"var full_text = 'This rows values are :' + data[0] ",
"$('td', row).attr('title', full_text);",
"}")
))
您可以在 rowCallback
函数中添加一些简单的逻辑,以便在将鼠标悬停在行上时获取所需的文本。
V1<-c(2,3,4,5)
fd<-data.frame(V1)
rownames(fd)[1:4]<-c("Total cases", "Total deaths", "Cases", "Deaths")
library(DT)
datatable(fd,colnames = rep("", ncol(fd)),
options = list(lengthChange = FALSE,scrollX = TRUE,dom = 't',
rowCallback = JS(
"function(row, data) {",
"
if (data[0].startsWith('Total')) {
var full_text = data[0] +' in the world.';
} else {
var full_text = 'Total ' + data[0].toLowerCase() +' in selected countries.';
}
console.log(data);
",
"$('td', row).attr('title', full_text);",
"}")
))