模态对话框打开时默认打开下拉菜单
Posted
技术标签:
【中文标题】模态对话框打开时默认打开下拉菜单【英文标题】:Dropdown menu opened by default when modal dialog opens 【发布时间】:2021-09-11 17:21:59 【问题描述】:以thread 为例,我添加了一个下拉菜单来选择表格列。
但是,当模式打开时,列表菜单应该关闭。
有没有办法使用 javascript 或其他方法来打开模式对话框并默认关闭下拉菜单?
library(shiny)
library(shinyjs)
library(shiny.semantic)
library(DT)
modal.js <- "$('.ui.modal').modal('show');
$('#my_table').show().trigger('shown');"
ui <- semanticPage(
suppressDependencies("bootstrap"),
useShinyjs(),
div(
class = "ui modal",
div(class = "header", "Modal header"),
div(class = "content",
div(class = "ui raised segment",
selectInput(inputId = "picker",
label = "Select column",
choices = names(iris),
selected = names(iris)[-1],
multiple=T),
br(),
DT::dataTableOutput("my_table")))
),
div(class = "ui basic button action-button", id = "open_modal", "Open modal ui")
)
server <- function(input, output, session)
output$my_table = DT::renderDataTable(head(iris[,input$picker]))
observeEvent(input$open_modal, runjs(modal.js))
shinyApp(ui, server, options = list(launch.browser = TRUE))
【问题讨论】:
【参考方案1】:尝试selectizeInput
中的选项openOnFocus = FALSE
,如下所示。
selectizeInput(inputId = "picker",
label = "Select column",
choices = names(iris),
selected = names(iris)[-1],
options = list(openOnFocus = FALSE),
multiple=T),
【讨论】:
以上是关于模态对话框打开时默认打开下拉菜单的主要内容,如果未能解决你的问题,请参考以下文章
使用css或js关闭时如何向右滑动bootstrap 4模态对话框
javascript 从其他模态打开/从其他模态打开时的堆栈引导模态
关于模态/非模态对话框不响应菜单的UPDATE_COMMAND_UI消息(对对WM_INITMENUPOPUP消息的处理)