如何显示和隐藏反应式按钮的选项?
How can show and hide options from a reactive Button?
我不知道该如何处理。
我有三个按钮,我希望当用户 select 其中一个按钮时,会出现一个带有选项的复选框,当用户更改按钮时,带有选项的复选框也会发生变化。
例子
actionButton("casos_button", "Casos", class = "btn-primary "),
actionButton("muertes_button", "Muertes", class = "btn-primary "),
actionButton("hospitalizados", "Hospitalizados", class = "btn-primary "),
如果用户 select 第一个按钮出现一个带有 3 个选项的复选框,如果他 select 第二个按钮然后对应于第一个按钮的选项消失并且复选框选项出现第二个按钮。
按钮 1
按钮 2
按钮 3
如果用户 select 按钮 1 然后会出现一个包含 3 个选项的复选框
如果用户 select 按钮 2 则会出现一个包含 4 个选项的复选框
如果用户 select 按钮 3 然后会出现一个带有 2 个选项的复选框
我是 shiny 的菜鸟,非常感谢你的 helo
这是一个使用shinyjs
首先隐藏checkboxGroupInput
的解决方案:
library(shiny)
library(shinyjs)
ui <- fluidPage(
useShinyjs(),
actionButton("button_1", "First Options"),
actionButton("button_2", "Second Options"),
hidden(checkboxGroupInput("options", "select the options", c("A", "B")))
)
server <- function(input, output, session) {
observeEvent(input$button_1, {
show("options")
updateCheckboxGroupInput(session,
"options",
choices = c("A", "B"))
})
observeEvent(input$button_2, {
show("options")
updateCheckboxGroupInput(session,
"options",
choices = c("C", "D"))
})
}
shinyApp(ui, server)
我不知道该如何处理。
我有三个按钮,我希望当用户 select 其中一个按钮时,会出现一个带有选项的复选框,当用户更改按钮时,带有选项的复选框也会发生变化。
例子
actionButton("casos_button", "Casos", class = "btn-primary "),
actionButton("muertes_button", "Muertes", class = "btn-primary "),
actionButton("hospitalizados", "Hospitalizados", class = "btn-primary "),
如果用户 select 第一个按钮出现一个带有 3 个选项的复选框,如果他 select 第二个按钮然后对应于第一个按钮的选项消失并且复选框选项出现第二个按钮。
按钮 1 按钮 2 按钮 3
如果用户 select 按钮 1 然后会出现一个包含 3 个选项的复选框 如果用户 select 按钮 2 则会出现一个包含 4 个选项的复选框 如果用户 select 按钮 3 然后会出现一个带有 2 个选项的复选框
我是 shiny 的菜鸟,非常感谢你的 helo
这是一个使用shinyjs
首先隐藏checkboxGroupInput
的解决方案:
library(shiny)
library(shinyjs)
ui <- fluidPage(
useShinyjs(),
actionButton("button_1", "First Options"),
actionButton("button_2", "Second Options"),
hidden(checkboxGroupInput("options", "select the options", c("A", "B")))
)
server <- function(input, output, session) {
observeEvent(input$button_1, {
show("options")
updateCheckboxGroupInput(session,
"options",
choices = c("A", "B"))
})
observeEvent(input$button_2, {
show("options")
updateCheckboxGroupInput(session,
"options",
choices = c("C", "D"))
})
}
shinyApp(ui, server)