【问题标题】:delete text when action button is clicked单击操作按钮时删除文本
【发布时间】:2017-03-13 15:52:36
【问题描述】:

我想使用闪亮删除 mainPanel 上的 textOutput。当应用程序启动时,应该有文本,例如“欢迎...”。通过单击操作按钮,将打印一个数据表,并且应该删除文本而不是写在表格下方。我用这样的方法尝试过(见下文),但output$mytable2 不能用作指标(

错误:不允许从闪亮输出对象中读取对象。

)。我没有包含整个代码,因为我认为这可能非常基本,但我找不到解决方案。 (我还尝试“removeUI”从按钮的observeEvent 函数内的ui 中删除textOutput(),但这删除了所有内容)

ui :  [...]
        mainPanel(
        DT::dataTableOutput('mytable2'),
        textOutput("welcome1")

server: [...]
        output$mytable2 <- DT::renderDataTable({
          (DT::datatable(datasetInput(),rownames=FALSE))
           }) 

          fg<-reactive({text1<-c("Welcome..","") 
          fg<-2
          if (is.null(output$mytable2)){fg=1}
          return(text1[fg])}) 

        output$welcome1 <- renderText({ fg() })...

任何简单的想法?只是如何管理这个示例?非常感谢!

【问题讨论】:

  • 您可以查看shinyjs 包并隐藏文本输出。你可以查看this链接。
  • 谢谢你,我会检查这个:)!

标签: r shiny


【解决方案1】:

这个解决方案怎么样:

ui.R

uiOutput("text)
actionButton("button1", "Go")

server.R

output$text <- renderUI({if(input$button1 == 0){paste("Welcome...")} else{return()}})

actionButton未按下时,值为0,按下后变为1

因此我使用了if...else.. 语句来说明如果按钮的值为0,然后显示文本“欢迎...”,如果它更改为1,什么都不返回。

【讨论】:

    猜你喜欢
    • 2016-10-26
    • 1970-01-01
    • 1970-01-01
    • 2018-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    相关资源
    最近更新 更多