首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >要求为pickerInput选择输入

要求为pickerInput选择输入
EN

Stack Overflow用户
提问于 2018-10-24 00:14:43
回答 1查看 836关注 0票数 0

如何才能要求用户选择来自pickerInput的输入

下面是一个基本的例子:

代码语言:javascript
复制
library("shiny")
library("shinyWidgets")

ui <- fluidPage(
  column(
    width = 4,
      pickerInput(inputId = "fruit", 
                  label = "Fruits", 
                  choices = c("Apple", "Mango", "Pear", "Orange"),
                  options = list(`actions-box` = T, 
                                 `none-selected-text` = "Please make a selection!"),
                  multiple = T)
        ))
server <- function(input, output) {
   output$res <- renderPrint({
   input$fruit
   })
}

shinyApp(ui = ui, server = server)

在创建pickerInput菜单时,是否可以添加一个选项来设置它,使菜单始终需要输入?

EN

回答 1

Stack Overflow用户

发布于 2018-10-24 00:30:24

您可以简单地更新它,我们还可以添加一个弹出式窗口,指示必须选择至少1个元素

代码语言:javascript
复制
library("shiny")
library("shinyWidgets")

mychoices <- c("Apple", "Mango", "Pear", "Orange")

ui <- fluidPage(
  column(
    width = 4,
    pickerInput(inputId = "fruit", 
                label = "Fruits", 
                choices = mychoices,
                options = list(`actions-box` = T, `none-selected-text` = "Please make a selection!",selected = mychoices[1]),
                multiple = T)
  ),
  column(4,textOutput("res"))

)
server <- function(input, output,session) {

  data <- eventReactive(input$fruit,{
    if(is.null(input$fruit)){
      updatePickerInput(session,"fruit",choices = mychoices,selected = mychoices[1])
      showNotification("At least 1 should be selected", duration = 2,type = c("error"))
    }
    input$fruit
  },ignoreNULL = F)

  output$res <- renderPrint({
    req(data())
    data()
  })
}

shinyApp(ui = ui, server = server)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52953607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档