首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >你能用shinyjs隐藏/显示整个面板吗?

你能用shinyjs隐藏/显示整个面板吗?
EN

Stack Overflow用户
提问于 2017-07-19 11:20:24
回答 2查看 2.2K关注 0票数 2

我想知道是否有可能在整个闪亮的wellPanel上使用shinyjs的隐藏和显示功能?我感兴趣的是这样做是为了有条件地显示两个面板中的一个,从我所能告诉的情况来看,我不能在conditionalPanel的条件中使用电抗值。

下面是我想要的一个例子,但是我不知道如何引用shinyjs函数中给出的井面板的id。

代码语言:javascript
复制
library(shiny)
library(shinyjs)

ui <- fluidPage(
  useShinyjs(),
  actionButton("test", label = "test"),
  shinyjs::hidden(wellPanel(id = "panelA", "I AM PANEL A")),
  wellPanel(id="panelB", "I AM PANEL B")
)

sever <- function(input,output){
  observeEvent(input$test, {
    shinyjs::showElement(id= "panelA")
    shinyjs::hideElement(id= "panelB")
  })
}

shinyApp(ui=ui,server=server)
EN

回答 2

Stack Overflow用户

发布于 2017-07-20 10:09:35

代码语言:javascript
复制
library(shiny)
library(shinyjs)

ui <- fluidPage(
  useShinyjs(),
  actionButton("showA", label = "Show A"),
  actionButton("showB", label = "Show B"),
  shinyjs::hidden(wellPanel(id = "panelA", "I AM PANEL A")),
  wellPanel(id="panelB", "I AM PANEL B")
)

server <- function(input,output){
  observeEvent(input$showA, {
    shinyjs::showElement(id= "panelA")
    shinyjs::hideElement(id= "panelB")
  })

  observeEvent(input$showB, {
    shinyjs::showElement(id= "panelB")
    shinyjs::hideElement(id= "panelA")
  })
}

shinyApp(ui=ui,server=server)
票数 3
EN

Stack Overflow用户

发布于 2017-07-19 14:22:03

正如Geovany所评论的,您将server错误地拼写为server。此外,您可能希望使用shinyjs中的切换函数。

代码语言:javascript
复制
library(shiny)
library(shinyjs)

ui <- fluidPage(
  useShinyjs(),
  actionButton("test", label = "test"),
  shinyjs::hidden(wellPanel(id = "panelA", "I AM PANEL A")),
  wellPanel(id="panelB", "I AM PANEL B")
)

server <- function(input,output){
  observeEvent(input$test, {
    shinyjs::toggle(id= "panelA")
    shinyjs::toggle(id= "panelB")
  })
}

shinyApp(ui=ui,server=server)

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45180395

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档