使用来自checkboxGroupInput

时间:2016-02-28 21:19:07

标签: r shiny

我想使用checkboxGroupInput,然后,如果选中某个框,我想要一个conditionalPanel。这里有一个玩具示例:

shinyUI(fluidPage( 

 sidebarLayout(
  sidebarPanel(
      checkboxGroupInput("items","Which Item?",
          choices=c("A","B","C","D")),
        conditionalPanel( condition = "input.items == 'D'",       
          numericInput("n","n",value=50,min=0,max=100,step=1)
        )
      ),       
      mainPanel(
      uiOutput("text")
     )
 )      

))

现在如果只选择了“D”框,这样可以正常工作,但是如果选择了几个框,则不行(如果我的问题正常)。

在server.R中的

类似

 if("D" %in% input$which) 

工作正常,但似乎在ui.R中不起作用。我也尝试了ala R的子集,例如

  conditionalPanel( condition = "input.items[4] == 'D'",

但这也不起作用。

沃尔夫冈

2 个答案:

答案 0 :(得分:9)

docendo给出了正确的答案:语法是

  conditionalPanel(condition = "input.items.includes('D')"

谢谢!

答案 1 :(得分:2)

它以某种方式不再适用于闪亮的v1.1.0。我正在平台平台上使用R版本3.5.1。以下内容比includes()解决方案更适合我(以防其他人遇到相同的问题):

conditionalPanel(condition = "input.items.indexOf('D') > -1", ...)

相关问题