【问题标题】:How to Create hyperlink to cell value in R shiny如何在 R Shiny 中创建指向单元格值的超链接
【发布时间】:2020-12-03 10:57:15
【问题描述】:

我有一个数据框data_input,内容如下:

使用以下代码将数据框加载到 R 闪亮数据表中:

output$table <-
DT::renderDataTable(DT::datatable(data_input,
  options = list(
    searching = TRUE,
    pageLength = 10,
    rownames(NULL),
    scrollX = T,
   filter="top"
  )
))

我需要打开一个超链接。单击“Feature”列中的值后,应将Location列的值附加到url并指向相应的页面。例如,点击X 后,应指向http://www.mywebsite.com;loc=1:02,其中http://www.mywebsite.com;loc= 是所有值的通用URL。

任何有效的方法来做到这一点?有类似的线程,但是解决方案并不具体。

【问题讨论】:

    标签: r shiny hyperlink datatables dt


    【解决方案1】:

    这是一种方法。

    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")
                )
              )
    )
    

    【讨论】:

      猜你喜欢
      • 2015-10-18
      • 2017-06-22
      • 2011-01-17
      • 1970-01-01
      • 2013-12-10
      • 2016-11-28
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多