【发布时间】:2018-09-14 12:50:08
【问题描述】:
在我闪亮的应用程序中,我有几个在应用程序启动时折叠的框。单击操作按钮后,将运行计算,然后框应展开并显示结果。这是我正在使用的示例代码,但它不会展开框。我从这里How to manually collapse a box in shiny dashboard 获得了“jscode”的代码。我相信这段代码是为了在单击按钮时折叠框;我不知道如何使它在单击按钮时展开框。
非常感谢,
克里纳
ui.R
library(shiny)
library(shinyBS)
library(dplyr)
library(shinydashboard)
# javascript code to collapse box
jscode <- "
shinyjs.collapse = function(boxid) {
$('#' + boxid).closest('.box').find('[data-widget=collapse]').click();
}
"
#Design sidebar
sidebar <- dashboardSidebar(width = 225, collapsed=F,
sidebarMenu(id="tabs",
menuItem("XYZ", tabName = "XYZ", selected=TRUE)))
#Design body
body <- dashboardBody(shinyjs:::useShinyjs(),
shinyjs:::extendShinyjs(text = jscode),
tabItems(
tabItem(tabName = "zz",
fluidRow(box(actionButton('go','Go', class='btn btn-info', icon=icon('play-circle-o','fg-lg'))),
box(id="B1", collapsible=T, collapsed = T, status = "primary", color="blue", solidHeader = T,
title="Test")))))
Header <- dashboardHeader()
#Show title and the page (includes sidebar and body)
dashboardPage(Header, sidebar, body)
服务器.R
library(shiny)
library(shinyBS)
library(dplyr)
library(shinydashboard)
# javascript code to collapse box
jscode <- "
shinyjs.collapse = function(boxid) {
$('#' + boxid).closest('.box').find('[data-widget=collapse]').click();
}
"
shinyServer(function(input, output, session){
eventReactive(input$go,
{js$collapse("B1")
js$collapse("B2")})
})
【问题讨论】: