A user-friendly replacement for select boxes with the multiple attribute
Usage
multiInput(
  inputId,
  label,
  choices = NULL,
  selected = NULL,
  options = NULL,
  width = NULL,
  choiceNames = NULL,
  choiceValues = NULL,
  autocomplete = FALSE
)Arguments
- inputId
- The - inputslot that will be used to access the value.
- label
- Display label for the control, or - NULLfor no label.
- choices
- List of values to select from. 
- selected
- The initially selected value. 
- options
- List of options passed to multi ( - enable_search = FALSEfor disabling the search bar for example).
- width
- The width of the input, e.g. - 400px, or- 100%.
- choiceNames
- List of names to display to the user. 
- choiceValues
- List of values corresponding to - choiceNames.
- autocomplete
- Sets the initial state of the autocomplete property. 
References
Fabian Lindfors, "A user-friendly replacement for select boxes with multiple attribute enabled", https://github.com/fabianlindfors/multi.js.
See also
updateMultiInput to update value server-side.
Examples
## Only run examples in interactive R sessions
if (interactive()) {
library("shiny")
library("shinyWidgets")
# simple use
ui <- fluidPage(
  multiInput(
    inputId = "id", label = "Fruits :",
    choices = c("Banana", "Blueberry", "Cherry",
                "Coconut", "Grapefruit", "Kiwi",
                "Lemon", "Lime", "Mango", "Orange",
                "Papaya"),
    selected = "Banana", width = "350px"
  ),
  verbatimTextOutput(outputId = "res")
)
server <- function(input, output, session) {
  output$res <- renderPrint({
    input$id
  })
}
shinyApp(ui = ui, server = server)
# with options
ui <- fluidPage(
  multiInput(
    inputId = "id", label = "Fruits :",
    choices = c("Banana", "Blueberry", "Cherry",
                "Coconut", "Grapefruit", "Kiwi",
                "Lemon", "Lime", "Mango", "Orange",
                "Papaya"),
    selected = "Banana", width = "400px",
    options = list(
      enable_search = FALSE,
      non_selected_header = "Choose between:",
      selected_header = "You have selected:"
    )
  ),
  verbatimTextOutput(outputId = "res")
)
server <- function(input, output, session) {
  output$res <- renderPrint({
    input$id
  })
}
shinyApp(ui = ui, server = server)
}