2016-08-22 65 views
0

如何在R中的新选项卡中显示在renderUI中定义的输出?如何在R的新选项卡窗口中显示输出?

observeEvent (input$button1, { 
output$details1 <- renderUI({  
fluidPage( 
     fluidRow( 
    #This part contains R statements including textboxes,checkboxes etc to be displayed in another tab window 
    ))     
})}) 

回答

0

你的问题质量差,我不是100%确定这是你想要/需要。

你基本上定义标签集,只是把你的表情的某些输入或输出元素这些选项卡内:

library(shiny) 

ui <- shinyUI(fluidPage(
    headerPanel("Tabsets"), 

    mainPanel(
    tabsetPanel(
     tabPanel("Tab 1", actionButton(inputId="button1", "Go!")), 
     tabPanel("Tab 2", uiOutput("details1")) 
    ) 
) 
)) 

server <- shinyServer(function(input, output) { 
    observeEvent (input$button1, { 
    output$details1 <- renderUI({  
     fluidRow( 
      renderText({ "Yeah!" }) 
     )     
    })}) 
}) 

shiny::shinyApp(ui=ui,server=server) 
+0

我想要一个窗体显示在新选项卡或新网页中,当点击一个按钮时。表单已经由我设计。也就是说当我的应用程序运行时,一个网页出现一个动作按钮。当这个动作按钮被点击时,一个新的网页必须显示我设计的表格。 – Anu

0

可以使用updateTabsetPanel单击该按钮时,更改为新的选项卡。

library(shiny) 

ui <- shinyUI(fluidPage( 
    tabsetPanel(type = "tabs", id = 'myTabs' 
       ,tabPanel(title = "Tab1",value = "tab1" ,actionButton(inputId="button1", "Go!")), 
       tabPanel(title = "Tab2", value = "tab2", uiOutput('details1') ) 
    ) 
)) 

server <- shinyServer(function(input, output, session) { 
    observeEvent(input$button1 , { 
     updateTabsetPanel(session = session 
      ,inputId = 'myTabs' 
      ,selected = 'tab2') 
    }) 
    output$details1 <- renderUI({ 
     textInput(inputId = 'Age', label = 'Age', value = 23) 
    })   
}) 

shiny::shinyApp(ui=ui,server=server) 
+0

谢谢先生。但先生通过新标签我的意思是新的网页,而不是出现在同一个网页上的标签闪亮的应用程序出现。例如,如果我使用谷歌,然后当按钮被点击时,窗体应该出现在谷歌的新标签,即新的谷歌网页。 – Anu

+0

@Anu Shiny目前不支持多页面应用,所以我不认为你想要做什么是可能的 - 至少不是没有一些广泛的解决方法。 – Teajay

相关问题