我创建了一个包含
textInput
还有
selectizeInput
。根据用户的输入,如果可以在一个数据集中找到输入,您将看到所有的可能性
文本输入
在
选择输入
.
通过这种方式,如果用户引入的单词不在数据集中,则
选择输入
无法显示任何选择。
一切正常,但我发现了一个问题。如果用户开始写正确的单词,用户会得到一个下拉列表。。。然后,如果输入被删除。。。下拉列表仍然存在(来自
选择输入
仍然存在)。
下面是代码:
library(shiny)
library(dplyr)
library(stringr)
ui <- fluidPage(
textInput("my_input", "Introduce a word"),
selectizeInput(inputId = "dropdown_list", label = "Choose the variable:", choices=character(0)),
)
server <- function(input, output, session) {
my_list <- reactive({
req(input$my_input)
data <- as.data.frame(storms)
res <- subset(data, (grepl(pattern = str_to_sentence(input$my_input), data$name))) %>%
dplyr::select(name)
res <- as.factor(res$name)
return(res)
})
observeEvent(input$my_input, {
updateSelectizeInput(
session = session,
inputId = "dropdown_list",
choices = my_list(), options=list(maxOptions = length(my_list())),
server = TRUE
)
})
}
shinyApp(ui, server)
你知道我怎样才能从列表中删除选项吗
选择输入
如果用户删除了输入?
非常感谢
当做