如何打开(使用代码)已关闭的boxPlus?
https://cran.r-project.org/web/packages/shinydashboardPlus/vignettes/improved-boxes.html
发布于 2020-08-14 17:41:28
我一直在寻找同样问题的答案,我已经想出了如何使用shinyjs来解决这个问题。
library(shinydashboardPlus)
library(shinydashboard)
library(shinyjs)
library(shiny)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
useShinyjs(),
boxPlus(
id = "openable-box-plus",
title = "Openable boxPlus",
closable = TRUE
),
actionButton(
inputId = "open-box-plus",
label = "Open boxPlus"
)
)
)
server <- function(input, output) {
observeEvent(
input$`open-box-plus`,
runjs('
document
.querySelector("#openable-box-plus")
.parentElement
.style.display = "block";
')
)
}
shinyApp(ui, server)当您在关闭boxPlus之前和之后检查它的HTML时,可以看到样式display: none;被添加到带有class="box"的<div>中。

为了选择特定的boxPlus,我添加了id = "openable-box-plus"。由于id使用display样式转到div的子div,因此您必须选择父元素,并将display更改为"block"
document
.querySelector("#openable-box-plus")
.parentElement
.style.display = "block";https://stackoverflow.com/questions/59259599
复制相似问题