如何使用Javascript隐藏Shiny中的动作按钮

时间:2015-03-03 09:42:21

标签: javascript r shiny

当谈到闪亮时,我是一个相当新秀。 在我的应用程序中,我需要在单击它时隐藏按钮,在这里我引入JS来获得该效果,但我无法得到它,因为当我运行应用程序时按钮不显示。

以下是我使用的代码。

ui.R

shinyUI( fluidPage(

titlePanel("Conditional panels"),

column(3, wellPanel(
a<-actionButton("action", label="Action"),
br(),
br()
)),

column(4,
     "This will show the button",
     "when we click action.",

     conditionalPanel("input.action > 0",
                      a1<- actionButton("show1", label="Show_1"), a2<-actionButton("show2", label="Show_2"), tags$script('document.getElementById("action").style.visibility="hidden";'))
)
))

有点令人困惑。 除了conditionalPanel之外,我还有什么方法可以探索吗? 我是否还需要在server.R

中进行额外配置

请帮助。

1 个答案:

答案 0 :(得分:1)

您可以添加一些javascript,点击它时会隐藏按钮。

将UI的其余部分保持不变,您可以使用:

column(3, wellPanel(
    a<-actionButton("action", label="Action"),
    tags$script(HTML('document.getElementById("action").onclick = function(){$(this).hide() }')),
    br(),
    br()  
  ))

单击按钮后,将在按钮上调用jQuery函数hide