问题描述
数据帧通过以下代码加载到R闪亮数据表中:
output$table <-
DT::renderDataTable(DT::datatable(data_input,options = list(
searching = TRUE,pageLength = 10,rownames(NULL),scrollX = T,filter="top"
)
))
我需要打开一个超链接。单击“功能” 列中的值后,位置列的值应附加到网址中,并直接指向相应的页面。例如,点击X
时应直接指向http://www.mywebsite.com;loc=1:02
,其中http://www.mywebsite.com;loc=
是所有值的通用网址。
任何有效的方法可以做到这一点吗?有类似的线索,但是解决方案并不具体。
解决方法
这是一种方法。
library(DT)
render <- c(
"function(data,type,row){"," if(type === 'display'){"," var a = '<a href=\"http://www.mywebsite.com?loc=' + row[2] + '\">' + data + '</a>';"," return a;"," } else {"," return data;"," }","}"
)
data_input <- data.frame(
List = c("A","B","C"),Feature = c("X","Y","Z"),Location = c("1:02","2:04","5:10")
)
datatable(data_input,rownames = FALSE,options = list(
columnDefs = list(
list(targets = 1,render = JS(render)),list(targets = "_all",className = "dt-center")
)
)
)