removeUI不能完全删除UI

问题描述 投票:0回答:1

我的仪表板中有两个tabItem,如ui.r文件中所示:

library(shiny)
library(shinydashboard)
library(shinyWidgets)


ui <- dashboardPage(
  dashboardHeader(
    title = "Title"
  ),

  dashboardSidebar(collapsed = FALSE,
                   sidebarMenu(id = 'sidebarMenu',
                               menuItem('Tab 1', tabName = 'tab1'),
                               menuItem('Tab 2', tabName = 'tab2')
                   )
  ),

  dashboardBody(
    tabItems(

      # First tab content
      tabItem(tabName = "tab1",

              div(id = "panel1_tab1",
                  wellPanel(title = "",
                            fluidRow(
                              column(4, actionButton("button_tab1","Check In Value",width='100%')
                              )
                            )
                  )
              ),

              div(id = "panel2_tab2",
                  wellPanel(title = "",

                            fluidRow(
                              column(8,
                                     textInput("valInput1", label = "Enter Input", value = "",width='100%')
                              )
                            )
                  )
              )
      ),

      # Second tab content
      tabItem(tabName = "tab2",

              div(id = "panel1_tab2",
                  wellPanel(title = "",
                            fluidRow(
                              column(4, actionButton("button_tab2","Check In Value",width='100%')
                              )
                            )
                  )
              ),

              div(id = "panel2_tab2",
                  wellPanel(title = "",
                            fluidRow(
                              column(8,
                                     textInput("valInput2", label = "Enter Input", value = "",width='100%')
                              )
                            )
                  )
              )
      )
    )
  )
)

我的目的是:在每个选项卡中,如果用户单击按钮,则应完全删除另一个选项卡中的textInput框。这是我在server.r]中的代码


server <- function(input, output, session) {

  observeEvent(input$button_tab1,
               {
                 removeUI(selector = '#valInput2')
               }
  )

  observeEvent(input$button_tab2,
               {
                 removeUI(selector = '#valInput1')
               }
  )
}

但是,尽管删除了textInput框,但仍保留其标签“ Enter Input”。如何完全删除整个UI?

谢谢,

我在仪表板中有两个tabUI,在ui.r文件中如下所示:library(shiny)library(shinydashboard)library(shinyWidgets)ui

r shiny shinydashboard
1个回答
0
投票

我不知道您是否要删除wellPanel。如果要删除整个wellPanel,请执行以下操作:

© www.soinside.com 2019 - 2024. All rights reserved.