从服务器端更改selectinput的边框颜色

时间:2017-04-19 14:04:04

标签: r shiny shinydashboard

这是this问题的后续问题。在上一个问题中,selectInput的边界使用以下参数tags$head(tags$style(HTML( "#Select1 ~ .selectize-control.single .selectize-input {border: 1px solid #dd4b39;}")))从ui侧更改。现在我想改变服务器端特定选择输出的边框颜色。我的主要目的实际上是根据不同的条件改变颜色。要从服务器端更改颜色,我尝试了以下代码,但它似乎不起作用。有没有办法实现这个目标?

这是我尝试过的代码:

library(shiny)

  ui <- fluidPage(

    tags$head(tags$style(htmlOutput("Border_Arg"))),

    selectInput("Select1", "Option1", choices = NULL),

    selectInput("Select2", "Option2", choices = NULL)
  )


  server <- function(input, output){
    output$Border_Arg <- renderUI({"#Select1 ~ .selectize-control.single .selectize-input {border: 1px solid #dd4b39;}"})
  }

  shinyApp(ui = ui, server = server)

1 个答案:

答案 0 :(得分:1)

你很亲密。

在下面找到一个正在运行的示例:

library(shiny)
ui <- fluidPage(
  selectInput("Select1", "Option1", choices = NULL),
  selectInput("Select2", "Option2", choices = NULL),
  uiOutput("Border_Arg")
)


server <- function(input, output){
  output$Border_Arg <- renderUI({
    tags$head(tags$style(HTML( "#Select1 ~ .selectize-control.single .selectize-input {border: 1px solid #dd4b39;}")))
  })
}

shinyApp(ui = ui, server = server)