R闪亮:数据表行的鼠标悬停文本 [英] R Shiny: Mouse Hover Text for Datatable Rows
本文介绍了R闪亮:数据表行的鼠标悬停文本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否有一种方法可以将鼠标悬停在数据表显示中的行(记录)上来显示文本?在对StackOverflow进行了类似的问题后,我找到了2个示例代码,其中一个显示列单元格的悬停文本,另一个在鼠标悬停时突出显示整行。
Is there a way to display mouseover text upon hovering over a row (record) in datatable display? After going through some similar questions on StackOverflow, I found 2 example codes, one that displays hover text for a column cell and one that highlights the entire row on mouse hover.
示例显示列单元格悬停文本的代码:
library(shiny)
library(DT)
shinyApp(
ui = fluidPage(
DT::dataTableOutput("table2")
),
server = function(input, output) {
output$table2<-DT::renderDataTable({
responseDataFilter2_home<-iris[,c(4,3,1)]
displayableData<-DT::datatable(responseDataFilter2_home,options = list(rowCallback = JS(
"function(nRow, aData, iDisplayIndex, iDisplayIndexFull) {",
"var full_text = aData[1] + ','+ aData[2]",
"$('td:eq(1)', nRow).attr('title', full_text);",
"}")
))#, stringAsFactors = FALSe, row.names = NULL)
},server = TRUE, selection = 'single', escape=FALSE,options=list(paging=FALSE,searching = FALSE,ordering=FALSE,scrollY = 400,scrollCollapse=TRUE,
columnDefs = list(list(width = '800%', targets = c(1)))),rownames=FALSE,colnames="Name")
}
)
我也找到了另一个在悬停时突出显示整个行的代码:
I also found another code that highlights the entire row upon hover:
鼠标悬停时突出显示行的示例代码
#rm(list = ls())
library(shiny)
library(DT)
ui <- basicPage(
tags$style(HTML('table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {background-color: pink !important;}')),
mainPanel(DT::dataTableOutput('mytable'))
)
server <- function(input, output,session) {
output$mytable = DT::renderDataTable(
datatable(mtcars)
)
}
runApp(list(ui = ui, server = server))
就我而言,我希望在鼠标悬停在数据表的一行上时显示文本。我该怎么办?
In my case, I wish to display text upon mouse hover over a row of the datatable. How shall I do that?
推荐答案
在这里,您要去:
library(shiny)
library(DT)
shinyApp(
ui = fluidPage(
DT::dataTableOutput("table")
),
server = function(input, output) {
output$table <- DT::renderDataTable({
DT::datatable(iris, rownames = FALSE,
options = list(rowCallback = JS(
"function(row, data) {",
"var full_text = 'This rows values are :' + data[0] + ',' + data[1] + '...'",
"$('td', row).attr('title', full_text);",
"}")))
})
}
)
这篇关于R闪亮:数据表行的鼠标悬停文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文