所以我想为我的应用程序创建一个函数,这样每当我按下按钮时,它就会使用我拥有的选择栏中的数据进行更新。
基本上,“在选择输入栏上选择一个项目”->“按 GO”->“已添加复选框” 同样,我希望复选框在单击时消失。
这是我到目前为止所拥有的,由于某种原因它似乎不起作用:/
runApp(list(
ui = pageWithSidebar(
headerPanel("Example"),
sidebarPanel(
selectInput("pet", "Select a pet", choices = c("cat","dog","bird"), selected = c('cat'))
,actionButton('on','GO')
,tags$hr()
,checkboxGroupInput('levels', 'Levels', choices = c('bear'))
),
mainPanel()
),
server = function(input, output, session) {
lvl<-reactive(unlist(input$levels))
observe({
if(input$on==0) return()
isolate({
updateCheckboxGroupInput(session, "levels", choices = c(input$pet,lvl()))
})#iso
})#obs
}
))
最佳答案
对于所有想知道我是否明白的人,这是我的代码:
runApp(list(
ui = pageWithSidebar(
headerPanel("Example"),
sidebarPanel(
selectInput("pet", "Select a pet", choices = c("cat","dog","bird"), selected = c('cat'))
,actionButton('on','GO')
,tags$hr()
,checkboxGroupInput('levels', 'Levels', choices = c('bear'),selected=c('bear'))
),
mainPanel()
),
server = function(input, output, session) {
lvl<-reactive(unlist(input$levels))
observe({
if(input$on==0) return()
isolate({
updateCheckboxGroupInput(session, "levels", choices = c(input$pet,lvl())
,selected=c(input$pet,lvl()))
})#iso
})#obs
observe({
updateCheckboxGroupInput(session, "levels", choices = c(lvl())
,selected=c(lvl()))
})
}
))
关于R:shiny updateCheckboxGroup 按下时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23860650/