输入字段取决于其他输入

时间:2017-04-13 10:05:24

标签: r shiny shiny-server

我有2个输入,比如A和B.

我想要"价值" B的字段取决于用户输入的值A.

即,我对B的建议取决于我在A中学到的东西。

以下代码不起作用。我该如何解决?

shinyApp(
  ui = fluidPage(
    textInput("A", "Enter a string"),
    textInput("B", "Enter another string", value = "Second"),
    textOutput("curval")
  ),
  server = function(input, output) {
    if (input$A == "foo"){input$B$value <- "bar"}
  }
)

此问题也被提出here。但它没有得到回答(虽然评论肯定是有帮助的。)

谢谢

1 个答案:

答案 0 :(得分:1)

您应该使用uiOutputrenderUI来生成取决于输入的小部件:

shinyApp(
  ui = fluidPage(
    textInput("A", "Enter a string"),
    uiOutput("B_ui"),
    textOutput("curval")
  ),
  server = function(input, output) {
    output$B_ui <- renderUI({
      if (input$A=="foo") textInput("B","Enter another string",value="bar")
      else textInput("B","Enter another string",value="Second")
    })
  }
)