在下拉菜单中添加动作按钮,我怎么知道按钮是不是被点击了闪亮

Posted

技术标签:

【中文标题】在下拉菜单中添加动作按钮,我怎么知道按钮是不是被点击了闪亮【英文标题】:Add actionbutton in a dropdown menu , how do I know if the button was clicked in shiny在下拉菜单中添加动作按钮,我怎么知道按钮是否被点击了闪亮 【发布时间】:2021-03-12 15:29:12 【问题描述】:

想知道一个按钮是否被点击或者如何集成闪亮的actionButton需要知道一个选项是否被选中然后用来运行一些东西

新使用shiny,只想做一个简单的仪表盘

library(shiny)

library(bs4Dash)
ui <- 
    bs4DashPage(
        enable_preloader = TRUE,
        navbar = bs4DashNavbar(border = FALSE,
                               rightUi = html('<div class="dropdown">
                                              <button class = "btn btn-outline-primary dropdown-toggle"
                                                      type  = "button"
                                                      id    = "dropdownMenuButton"
                                                      data-toggle ="dropdown" 
                                                      aria-haspopup="true" 
                                                      aria-expanded="false">
                                                      Período de Consulta
                                                      </button>
                                              <div class="dropdown-menu dropdown-menu-right"  aria-labelledby="dropdownMenuButton">
                                                <button id = "yr_anterior"  class="dropdown-item" type="button">Año Pasado</button>
                                                <button id = "mes_anterior" class="dropdown-item" type="button">Mes Pasado</button>
                                                <button id = "sem_anterior" class="dropdown-item" type="button">Ultima Semana</button>
                                              </div>
                                            </div>')),
        sidebar = bs4DashSidebar(title = "Opciones",skin = "light",status = "info",brandColor = "primary"),
        
        footer = bs4DashFooter(),
        title = "test",
        body = bs4DashBody(
            textOutput("valor")
        )
    )
server <- function(input, output,session) 
observeEvent(input$yr_anterior,
    output$valor <- renderText("hola"))


# Run the application 
shinyApp(ui = ui, server = server)

【问题讨论】:

【参考方案1】:

我认为shinyWidgets 包中的函数pickerInput 可以生成您正在寻找的内容。您可以将其与示例中的标签一起使用,input$InputMenu 在您的 server 函数中提供选定选项

pickerInput(inputId = 'InputMenu',
            choices = c("Período de Consulta","Año Pasado","Mes Pasado","Ultima Semana"),
            options = list(style = "btn-outline-primary dropdown-toggle") )

或添加标签而不是首选label="Período de Consulta:"

【讨论】:

以上是关于在下拉菜单中添加动作按钮,我怎么知道按钮是不是被点击了闪亮的主要内容,如果未能解决你的问题,请参考以下文章

MFC 在自定义工具栏上添加有下拉菜单的按钮。

下拉菜单 第一个按钮里的内容怎么默认展开?

是否可以添加 onClick() 事件动作(在 GameObject 下拉菜单中)而不在 Unity 中添加新脚本?

dotnetbar ribbonControl中按钮下拉菜单的问题

怎么在toolbar上添加按钮

Android由一个文本或者按钮点击之后,可以弹出来上下文菜单这个功能怎么做?