我正在建立一个网站,允许用户访问一些实验数据。我在R MarkDown工作。
我是网络开发的新手,我不了解Javascript,因此我将搜索工具构建为Shiny应用程序,搜索结果以表格的形式显示,并带有结果名称和一些细节。
我想将名称转换为.rmd文档的链接,用户可以单击该文档以访问有关该结果的更多详细信息。
data=as.matrix(cbind(names=letters[1:10], position=1:10, val=runif(10)),)
ui <- fluidpage(
sidebarPanel(
textInput("name",label = "name", value = "")
)
mainPanel(tableOutput("res"))
)
server <- function (input, output) {
searchedName=as.character(input$name)
if (searchedName != "") {
res.table=subset(data, data$names==searchedName)
}
output$res=renderTable({
res=as.data.frame(cbind(res.table[,1],res.table[,2]))
colnames(res)=c("name","position")
return(res)
}, align="c", colnames = T)
}
我尝试了HTML (paste0("< a href=page.rmd>", res$name, "< /a>, collapse=""))
并使用了tags$a()
,但是一旦传递到输出表中,都没有被识别为html。
答案 0 :(得分:2)
如果您可以使用a
代替renderDataTable
,则可以:
使用renderTable
或paste0
将sprintf
与renderDataTable
注意:我在代码中进行了一些更改,以便在escape=FALSE
reactive
中进行子集化。
renderDataTable