Include link to local html file in DataTable in Shiny

我的梦境 提交于 2019-11-28 02:09:35

问题


I want to include a link to a local html file, which lives inside the www directory of my shiny app, inside a column in data.table. On click a new tab should open showing the html file. I've found solutions for linking to internet pages, but how do I adjust this, so that Shiny finds the local files, when rendered in a browser?

This is my code

library(DT)
library(shiny)

link <- "www/my_html.html"
link <- paste0("<a href='", link,"' target='_blank'>", link,"</a>")  # works fine for global url, but not for local file
df <- data.frame(a = 10.5, b = 48, link = link)

ui <- fluidPage(
  DT::dataTableOutput('table1')
)

server <- function(input, output) {
  output$table1 <- DT::renderDataTable({df}, escape = -3)
}

shinyApp(ui, server)

回答1:


Maybe you could try running your app using a shiny folder. Make sure your my_html.html file is located in a www folder in your shiny folder.

ui.R

library(DT)
library(shiny)

fluidPage(
  DT::dataTableOutput('table1')
)

server.R

library(DT)
library(shiny)

df <- data.frame(a = 10.5, b = 48, link = "<a href='my_html.html' target='blank' >MyFile</a>")

function(input, output) {
  output$table1 <- DT::renderDataTable({df}, escape = FALSE)
}


来源:https://stackoverflow.com/questions/41784631/include-link-to-local-html-file-in-datatable-in-shiny

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!