Я хочу обновить Pickerinput, изменив другой PickerInput. Как это сделать на стороне сервера в Shiny?
У меня есть два pickerInput с такими же вариантами выбора, как: choices = colnames (intangible_features [, c (30:34)]). Если пользователь выбирает один вариант из pickerinput, другой pickerinput обновляется также на той же панели инструментов
Как уже упоминалось, лучше всего использовать фрагмент кода, содержащий минимально воспроизводимый пример. См. stackoverflow.com/help/mcve





Вы можете использовать функцию observeEvent на стороне сервера для отслеживания статуса pickerInput # 1, а затем использовать функцию updatePickerInput для обновления pickerInput # 2.
См. Приведенный ниже код, который берет первую букву в pickerInput # 1 и соответственно выбирает содержимое pickerInput # 2:
library("shiny")
library("shinyWidgets")
ui <- fluidPage(
tags$h2("Update pickerInput"),
fluidRow(
column(
width = 5, offset = 1,
pickerInput(
inputId = "p1",
label = "Starting Letters",
choices = LETTERS
)
),
column(
width = 5,
pickerInput(
inputId = "p2",
label = "Names of Cars",
choices = ""
)
)
)
)
server <- function(input, output, session) {
observeEvent(input$p1, {
updatePickerInput(session = session, inputId = "p2",
choices = grep(paste0("^",input$p1), rownames(mtcars), value = TRUE))
}, ignoreInit = TRUE)
}
shinyApp(ui = ui, server = server)
}
Добро пожаловать в SO. Пожалуйста, дайте нам больше информации и, если возможно, минимальный воспроизводимый пример, чтобы мы могли вам помочь.