使用actionButton在RShiny中发送电子邮件

kfu*_*ong 5 html css r button shiny

我正在开发一个Shiny的网络应用程序.我对R非常熟悉,但我对HTML,CSS,jQuery等的知识缺乏,这使得格式化的东西非常具有挑战性.

我想要包含一个actionButton用户可以点击以在出现问题或疑虑时向管理员发送电子邮件的内容.这是我到目前为止所做的工作,但是非常令人发指:

library(shiny)
ui <- shinyUI(fluidPage(
  # Set layout/format for app
  sidebarLayout(
    sidebarPanel(
      downloadButton("download_data", "Download this Data"),
      br(),
      actionButton(inputId = "email1", 
                   icon = icon("envelope", lib = "font-awesome"), 
                   a("Contact Admin", 
                       href="mailto:my_awesome_email_address.com"))
    ),
    mainPanel(),
    position = "left"
  )
)
)

server <- shinyServer(function(input, output) {})
shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)

如果可能的话,我想继续使用actionButton或类似的东西,以便在两个按钮上保持相同的按钮格式.

提前致谢!

kfu*_*ong 9

好吧,这很烦人.讨厌成为回答他自己问题的人之一,但这里有:

我玩弄tags了我的代码中的不同的订单,并意识到我当前的代码是错误的,因为我只是说我希望按钮的文本链接到我的电子邮件地址而不是按钮本身.为了解决这个问题,我翻转actionButtona()标签的嵌套以获得以下内容:

a(actionButton(inputId = "email1", label = "Contact Admin", 
                 icon = icon("envelope", lib = "font-awesome")),
    href="mailto:my_awesome_email_address.com")
Run Code Online (Sandbox Code Playgroud)

点击按钮上的任意位置会自动打开发送到论坛后给定电子邮件地址的电子邮件mailto.无需额外的HTML或CSS编码.希望这可以帮助其他人,这样他们就可以花时间做一些比在网上搜索数小时更有价值的东西.