将操作按钮重置为NULL

时间:2018-10-03 12:48:15

标签: r shiny

人们如何将actionButton重置回被选中的状态= character(0)而不是他们可以使用的单选按钮之一,

有什么主意吗?

3 个答案:

答案 0 :(得分:0)

据我所知,无法在shiny中重置actionButton。

您可以考虑每次单击按钮时增加一个reactiveValue,然后检查该值是否为奇数甚至执行给定的动作。

答案 1 :(得分:0)

您是否要使用操作按钮来重置单选按钮?尝试使用updateRadioButtonhttps://shiny.rstudio.com/reference/shiny/0.14/updateRadioButtons.html)。这是一个示例:

library("shiny")
ui <- fluidPage(
  sidebarPanel(
    radioButtons("radio_buttons", "Radio buttons", list("option 1", "option 2"), 
                 selected = character(0)),
    actionButton("reset_button", "Reset button")
  )




)

server <- function(input, output, session) {
  observeEvent(input$reset_button, {

    updateRadioButtons(session, "radio_buttons", "Radio buttons", list("option 1", "option 2"),
                       selected = character(0)
    )
  })
}

shinyApp(ui = ui, server = server) 

答案 2 :(得分:0)

您可以为此使用Shinyjs软件包,感谢Dean Attali的这个出色的软件包。

这是一个示例:

if (interactive()) {
     library(shiny)
  library(shinyjs)

  shinyApp(
   ui = fluidPage(
   useShinyjs(),
   div(
   id = "form",
          textInput("name", "Name"),
           radioButtons("gender", "Gender", c("Male", "Female"))
         ),
        actionButton("resetAll", "Reset all"),
         actionButton("resetName", "Reset name"),
         actionButton("resetGender", "Reset Gender")
       ),
       server = function(input, output) {
         observeEvent(input$resetName, {
           reset("name")
         })
         observeEvent(input$resetGender, {
           reset("gender")
         })
         observeEvent(input$resetAll, {
           reset("form")
         })
      }
     )
   }

您可以在here

中了解此内容