Clickable links in Shiny Datatable

前端 未结 1 528
我在风中等你
我在风中等你 2020-12-07 16:12

I created a table containing some HTML links using Shiny\'s renderDataTable. The links are not clickable, though, instead they render literally:

https://samizdat.shi

相关标签:
1条回答
  • 2020-12-07 16:33

    I had the same problem. The escape = FALSE option for renderDataTable solved it, as you mentioned in the comments.

    Here is complete code for an app with a table that has links.

    If you are doing this, you will want each link to be unique based on a value in the table. I move this code into a function so its cleaner.

    #app.R#
    
    library(shiny)
    
    createLink <- function(val) {
      sprintf('<a href="https://www.google.com/#q=%s" target="_blank" class="btn btn-primary">Info</a>',val)
    }
    
    ui <- fluidPage(  
      titlePanel("Table with Links!"),
      sidebarLayout(
        sidebarPanel(
          h4("Click the link in the table to see
             a google search for the car.")
        ),
        mainPanel(
          dataTableOutput('table1')
        )
      )
    )
    
    server <- function(input, output) {
    
      output$table1 <- renderDataTable({
    
        my_table <- cbind(rownames(mtcars), mtcars)
        colnames(my_table)[1] <- 'car'
        my_table$link <- createLink(my_table$car)
        return(my_table)
    
      }, escape = FALSE)
    }
    
    shinyApp(ui, server)
    
    0 讨论(0)
提交回复
热议问题