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

时间:2017-07-28 15:12:59

标签: 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) ,以便在出现问题或疑虑时向管理员发送电子邮件。这是我到目前为止所做的工作,但是非常令人发指:

actionButton

如果可能的话,我想继续使用value = a + 1; 或类似的东西,以便在两个按钮上保持相同的按钮格式。

提前致谢!

1 个答案:

答案 0 :(得分:6)

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

我玩弄了我的代码中不同tags的排序并意识到我当前的代码是错误的,因为我只是声明我希望按钮的文本链接到我的电子邮件地址而不是按钮本身。为了解决这个问题,我翻了actionButtona()标记的嵌套来获取以下内容:

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

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